Skip to content

Commit

Permalink
Java: no longer import all constants.
Browse files Browse the repository at this point in the history
  • Loading branch information
overcat committed May 29, 2024
1 parent 44336bf commit 52728d1
Show file tree
Hide file tree
Showing 33 changed files with 16 additions and 40 deletions.
22 changes: 15 additions & 7 deletions lib/xdrgen/generators/java.rb
Original file line number Diff line number Diff line change
Expand Up @@ -53,12 +53,10 @@ def add_imports_for_definition(defn, imports)
imports.add("lombok.NoArgsConstructor")
imports.add("lombok.AllArgsConstructor")
imports.add("lombok.Builder")
imports.add("static #{@namespace}.Constants.*")
when AST::Definitions::Typedef
imports.add("lombok.Data")
imports.add("lombok.NoArgsConstructor")
imports.add("lombok.AllArgsConstructor")
imports.add("static #{@namespace}.Constants.*")
end

if defn.respond_to? :nested_definitions
Expand Down Expand Up @@ -478,7 +476,7 @@ def encode_type(type, value)
"#{value}.encode(stream)"
when AST::Concerns::NestedDefinition ;
"#{value}.encode(stream)"
else
else
raise "Unknown typespec: #{type.class.name}"
end
end
Expand All @@ -497,7 +495,7 @@ def decode_member(value, member, out)
case member.declaration
when AST::Declarations::Opaque ;
if (member.declaration.fixed?)
out.puts "int #{member.name}Size = #{member.declaration.size};"
out.puts "int #{member.name}Size = #{convert_constant member.declaration.size};"
else
out.puts "int #{member.name}Size = stream.readInt();"
end
Expand All @@ -507,7 +505,7 @@ def decode_member(value, member, out)
EOS
when AST::Declarations::Array ;
if (member.declaration.fixed?)
out.puts "int #{member.name}Size = #{member.declaration.size};"
out.puts "int #{member.name}Size = #{convert_constant member.declaration.size};"
else
out.puts "int #{member.name}Size = stream.readInt();"
end
Expand Down Expand Up @@ -544,7 +542,7 @@ def decode_type(decl)
when AST::Typespecs::Bool ;
"stream.readInt() == 1 ? true : false"
when AST::Typespecs::String ;
"XdrString.decode(stream, #{decl.size || 'Integer.MAX_VALUE'})"
"XdrString.decode(stream, #{(convert_constant decl.size) || 'Integer.MAX_VALUE'})"
when AST::Typespecs::Simple ;
"#{name decl.type.resolved_type}.decode(stream)"
when AST::Concerns::NestedDefinition ;
Expand Down Expand Up @@ -614,7 +612,7 @@ def type_string(type)
when AST::Typespecs::Bool ;
"Boolean"
when AST::Typespecs::Opaque ;
"Byte[#{type.size}]"
"Byte[#{convert_constant type.size}]"
when AST::Typespecs::String ;
"XdrString"
when AST::Typespecs::Simple ;
Expand Down Expand Up @@ -644,6 +642,16 @@ def escape_html(value)
.gsub('>', '>')
.gsub('*', '*') # to avoid encountering`*/`
end

def convert_constant(str)
if str.nil? || str.empty?
str
elsif str =~ /\A\d+\z/
str
else
"Constants.#{str}"
end
end
end
end
end
3 changes: 1 addition & 2 deletions spec/output/generator_spec_java/const.x/TestArray.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* TestArray's original definition in the XDR file is:
Expand All @@ -33,7 +32,7 @@ public void encode(XdrDataOutputStream stream) throws IOException {

public static TestArray decode(XdrDataInputStream stream) throws IOException {
TestArray decodedTestArray = new TestArray();
int TestArraySize = FOO;
int TestArraySize = Constants.FOO;
decodedTestArray.TestArray = new Integer[TestArraySize];
for (int i = 0; i < TestArraySize; i++) {
decodedTestArray.TestArray[i] = stream.readInt();
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/const.x/TestArray2.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* TestArray2's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/nesting.x/Foo.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Foo's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/nesting.x/MyUnion.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* MyUnion's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/optional.x/Arr.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Arr's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/optional.x/HasOptions.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* HasOptions's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/struct.x/Int64.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Int64's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/struct.x/MyStruct.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* MyStruct's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/HasStuff.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* HasStuff's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Hash.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Hash's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Hashes1.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Hashes1's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Hashes2.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Hashes2's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Hashes3.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Hashes3's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Int1.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Int1's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Int2.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Int2's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Int3.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Int3's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Int4.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Int4's original definition in the XDR file is:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* LotsOfMyStructs's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/MyStruct.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* MyStruct's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Nester.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* Nester's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/OptHash1.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* OptHash1's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/OptHash2.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* OptHash2's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Str.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Str's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Str2.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Str2's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Uint512.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Uint512's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Uint513.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Uint513's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/test.x/Uint514.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Uint514's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/union.x/Error.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Error's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/union.x/IntUnion.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* IntUnion's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/union.x/IntUnion2.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* IntUnion2's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/union.x/Multi.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import static MyXDR.Constants.*;

/**
* Multi's original definition in the XDR file is:
Expand Down
1 change: 0 additions & 1 deletion spec/output/generator_spec_java/union.x/MyUnion.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.Builder;
import static MyXDR.Constants.*;

/**
* MyUnion's original definition in the XDR file is:
Expand Down

0 comments on commit 52728d1

Please sign in to comment.