unageanu-javaclass 0.2.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. data/ChangeLog +5 -0
  2. data/javaclass.gemspec +18 -0
  3. data/lib/javaclass.rb +1 -0
  4. data/lib/javaclass/accessflag.rb +1 -1
  5. data/lib/javaclass/attribute.rb +293 -2
  6. data/lib/javaclass/base.rb +33 -4
  7. data/lib/javaclass/code.rb +78 -0
  8. data/lib/javaclass/constant.rb +2 -2
  9. data/lib/javaclass/member.rb +18 -18
  10. data/lib/javaclass/reader.rb +460 -6
  11. data/sample/caller.rb +95 -0
  12. data/sample/java_class/com/example/Constants.class +0 -0
  13. data/sample/java_class/com/example/Deprecated.class +0 -0
  14. data/sample/java_class/com/example/InnerClass.class +0 -0
  15. data/sample/java_class/com/example/InnerClassImpl.class +0 -0
  16. data/sample/java_class/com/example/Kitten.class +0 -0
  17. data/sample/java_class/com/example/ThrowsException.class +0 -0
  18. data/sample/java_class/com/example/annotation/Annotated.class +0 -0
  19. data/sample/java_class/com/example/annotation/AnnotatedMethod.class +0 -0
  20. data/sample/java_class/com/example/annotation/ClassAnnotationA.class +0 -0
  21. data/sample/java_class/com/example/annotation/HasDefaultValue.class +0 -0
  22. data/sample/java_class/com/example/annotation/RuntimeAnnotationA.class +0 -0
  23. data/sample/java_class/com/example/annotation/RuntimeAnnotationB.class +0 -0
  24. data/sample/java_class/com/example/annotation/RuntimeAnnotationC.class +0 -0
  25. data/sample/java_class/com/example/annotation/SourceAnnotationA.class +0 -0
  26. data/sample/java_class/com/example/caller/A.class +0 -0
  27. data/sample/java_class/com/example/caller/B.class +0 -0
  28. data/sample/java_class/com/example/caller/C.class +0 -0
  29. data/sample/java_class/com/example/caller/CallSample$A.class +0 -0
  30. data/sample/java_class/com/example/caller/CallSample$B.class +0 -0
  31. data/sample/java_class/com/example/caller/CallSample$C.class +0 -0
  32. data/sample/java_class/com/example/caller/CallSample.class +0 -0
  33. data/sample/java_class/com/example/caller/D.class +0 -0
  34. data/sample/java_class/com/example/code/Statement.class +0 -0
  35. data/sample/java_class/com/example/types/TypeVariables.class +0 -0
  36. data/sample/java_src/com/example/caller/A.java +19 -0
  37. data/sample/java_src/com/example/caller/B.java +7 -0
  38. data/sample/java_src/com/example/caller/C.java +7 -0
  39. data/sample/java_src/com/example/caller/CallSample.java +23 -0
  40. data/sample/java_src/com/example/caller/D.java +5 -0
  41. data/sample/java_src/com/example/code/Statement.java +41 -0
  42. data/sample/sample.rb +3 -3
  43. data/test/all_tests.rb +9 -0
  44. data/test/java_src/com/example/TestClass1.java +35 -0
  45. data/test/test_attribute.rb +150 -2
  46. data/test/test_class.rb +0 -1
  47. data/test/test_member.rb +4 -1
  48. metadata +44 -46
data/test/test_class.rb CHANGED
@@ -65,7 +65,6 @@ module JavaClass
65
65
 
66
66
  jc = get_class_from_resource( "/java_class/com/example/TestClass1.class")
67
67
  str_index = jc.put_constant( utf8("abc" ) )
68
- puts str_index
69
68
  assert_equal str_index, jc.put_constant( utf8("abc" ) ) # 同じindexが返される。
70
69
 
71
70
  # バイト配列化→復元で同じ値が返されることを確認
data/test/test_member.rb CHANGED
@@ -183,7 +183,7 @@ STR
183
183
  [],
184
184
  []
185
185
  ]),
186
- "Code"=> CodeAttribute.new( @java_class, 13, 10, 8, [0x05, 0x06], [], {} )
186
+ "Code"=> CodeAttribute.new( @java_class, 13, 10, 8, [Code.new(@java_class, 0, 0x05), Code.new(@java_class, 1, 0x06)], [], {} )
187
187
  }
188
188
  assert_method( m ) {|a|
189
189
  assert_equal a.name, "aaa"
@@ -204,6 +204,9 @@ STR
204
204
  public static com.foo.Hoge aaa ( @com.foo.Var
205
205
  @com.foo.Hoge byte arg1, int[] arg2, @com.foo.Hoge com.foo.Var arg3 )
206
206
  throws java.lang.Exception, java.lang.Throwable {
207
+
208
+ 0 : iconst_2
209
+ 1 : iconst_3
207
210
  }
208
211
  STR
209
212
  assert_equal a.dump,
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unageanu-javaclass
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masaya Yamauchi
@@ -9,11 +9,12 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-08-13 00:00:00 -07:00
12
+ date: 2010-01-17 00:00:00 +09:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rubyzip
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
@@ -30,44 +31,22 @@ extensions: []
30
31
  extra_rdoc_files:
31
32
  - README
32
33
  files:
33
- - test/java_class
34
- - test/java_class/com
35
- - test/java_class/com/example
36
- - test/java_class/com/example/TestClass1$1.class
37
- - test/java_class/com/example/TestClass1$Hoo.class
38
- - test/java_class/com/example/TestClass1$Var.class
39
- - test/java_class/com/example/TestClass1.class
40
- - test/java_class/com/example/TestClass2$1.class
41
- - test/java_class/com/example/TestClass2$Hoo.class
42
- - test/java_class/com/example/TestClass2.class
43
- - test/java_src
44
- - test/java_src/com
45
- - test/java_src/com/example
46
- - test/java_src/com/example/TestClass1.java
47
- - test/java_src/com/example/TestClass2.java
48
- - test/test_access_flag.rb
49
- - test/test_attribute.rb
50
- - test/test_class.rb
51
- - test/test_constant.rb
52
- - test/test_member.rb
53
- - test/test_util.rb
54
- - lib/javaclass
34
+ - README
35
+ - javaclass.gemspec
36
+ - ChangeLog
55
37
  - lib/javaclass/accessflag.rb
56
38
  - lib/javaclass/attribute.rb
57
39
  - lib/javaclass/base.rb
58
40
  - lib/javaclass/class.rb
41
+ - lib/javaclass/code.rb
59
42
  - lib/javaclass/constant.rb
60
43
  - lib/javaclass/member.rb
61
44
  - lib/javaclass/reader.rb
62
45
  - lib/javaclass/ziputils.rb
63
46
  - lib/javaclass.rb
47
+ - sample/caller.rb
64
48
  - sample/create_assert.rb
65
- - sample/dependency.rb
66
49
  - sample/find.rb
67
- - sample/java_class
68
- - sample/java_class/com
69
- - sample/java_class/com/example
70
- - sample/java_class/com/example/annotation
71
50
  - sample/java_class/com/example/annotation/Annotated.class
72
51
  - sample/java_class/com/example/annotation/AnnotatedMethod$A.class
73
52
  - sample/java_class/com/example/annotation/AnnotatedMethod$B.class
@@ -79,6 +58,15 @@ files:
79
58
  - sample/java_class/com/example/annotation/RuntimeAnnotationB.class
80
59
  - sample/java_class/com/example/annotation/RuntimeAnnotationC.class
81
60
  - sample/java_class/com/example/annotation/SourceAnnotationA.class
61
+ - sample/java_class/com/example/caller/A.class
62
+ - sample/java_class/com/example/caller/B.class
63
+ - sample/java_class/com/example/caller/C.class
64
+ - sample/java_class/com/example/caller/CallSample$A.class
65
+ - sample/java_class/com/example/caller/CallSample$B.class
66
+ - sample/java_class/com/example/caller/CallSample$C.class
67
+ - sample/java_class/com/example/caller/CallSample.class
68
+ - sample/java_class/com/example/caller/D.class
69
+ - sample/java_class/com/example/code/Statement.class
82
70
  - sample/java_class/com/example/Constants.class
83
71
  - sample/java_class/com/example/Deprecated.class
84
72
  - sample/java_class/com/example/InnerClass$1.class
@@ -95,13 +83,8 @@ files:
95
83
  - sample/java_class/com/example/InnerClassImpl.class
96
84
  - sample/java_class/com/example/Kitten.class
97
85
  - sample/java_class/com/example/ThrowsException.class
98
- - sample/java_class/com/example/types
99
86
  - sample/java_class/com/example/types/TypeVariables.class
100
87
  - sample/java_class/HelloWorld.class
101
- - sample/java_src
102
- - sample/java_src/com
103
- - sample/java_src/com/example
104
- - sample/java_src/com/example/annotation
105
88
  - sample/java_src/com/example/annotation/Annotated.java
106
89
  - sample/java_src/com/example/annotation/AnnotatedMethod.java
107
90
  - sample/java_src/com/example/annotation/ClassAnnotationA.java
@@ -110,22 +93,42 @@ files:
110
93
  - sample/java_src/com/example/annotation/RuntimeAnnotationB.java
111
94
  - sample/java_src/com/example/annotation/RuntimeAnnotationC.java
112
95
  - sample/java_src/com/example/annotation/SourceAnnotationA.java
96
+ - sample/java_src/com/example/caller/A.java
97
+ - sample/java_src/com/example/caller/B.java
98
+ - sample/java_src/com/example/caller/C.java
99
+ - sample/java_src/com/example/caller/CallSample.java
100
+ - sample/java_src/com/example/caller/D.java
101
+ - sample/java_src/com/example/code/Statement.java
113
102
  - sample/java_src/com/example/Constants.java
114
103
  - sample/java_src/com/example/Deprecated.java
115
104
  - sample/java_src/com/example/InnerClass.java
116
105
  - sample/java_src/com/example/InnerClassImpl.java
117
106
  - sample/java_src/com/example/Kitten.java
118
107
  - sample/java_src/com/example/ThrowsException.java
119
- - sample/java_src/com/example/types
120
108
  - sample/java_src/com/example/types/TypeVariables.java
121
109
  - sample/java_src/HelloWorld.java
122
- - sample/sample.jar
123
110
  - sample/sample.rb
124
111
  - sample/type_hierarchy.rb
125
- - README
126
- - ChangeLog
112
+ - test/all_tests.rb
113
+ - test/java_class/com/example/TestClass1$1.class
114
+ - test/java_class/com/example/TestClass1$Hoo.class
115
+ - test/java_class/com/example/TestClass1$Var.class
116
+ - test/java_class/com/example/TestClass1.class
117
+ - test/java_class/com/example/TestClass2$1.class
118
+ - test/java_class/com/example/TestClass2$Hoo.class
119
+ - test/java_class/com/example/TestClass2.class
120
+ - test/java_src/com/example/TestClass1.java
121
+ - test/java_src/com/example/TestClass2.java
122
+ - test/test_access_flag.rb
123
+ - test/test_attribute.rb
124
+ - test/test_class.rb
125
+ - test/test_constant.rb
126
+ - test/test_member.rb
127
+ - test/test_util.rb
127
128
  has_rdoc: true
128
129
  homepage: http://github.com/unageanu/javaclass/tree/master
130
+ licenses: []
131
+
129
132
  post_install_message:
130
133
  rdoc_options:
131
134
  - --main
@@ -147,14 +150,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
147
150
  requirements: []
148
151
 
149
152
  rubyforge_project:
150
- rubygems_version: 1.2.0
153
+ rubygems_version: 1.3.5
151
154
  signing_key:
152
- specification_version: 2
155
+ specification_version: 3
153
156
  summary: javaclass is a java class file parser for ruby.
154
157
  test_files:
155
- - test/java_class
156
- - test/java_class/com
157
- - test/java_class/com/example
158
+ - test/all_tests.rb
158
159
  - test/java_class/com/example/TestClass1$1.class
159
160
  - test/java_class/com/example/TestClass1$Hoo.class
160
161
  - test/java_class/com/example/TestClass1$Var.class
@@ -162,9 +163,6 @@ test_files:
162
163
  - test/java_class/com/example/TestClass2$1.class
163
164
  - test/java_class/com/example/TestClass2$Hoo.class
164
165
  - test/java_class/com/example/TestClass2.class
165
- - test/java_src
166
- - test/java_src/com
167
- - test/java_src/com/example
168
166
  - test/java_src/com/example/TestClass1.java
169
167
  - test/java_src/com/example/TestClass2.java
170
168
  - test/test_access_flag.rb