furnace-avm2 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +2 -2
- data/bin/furnace-avm2 +1 -2
- data/furnace-avm2.gemspec +1 -2
- data/lib/{avm2.rb → furnace-avm2.rb} +3 -5
- data/lib/furnace-avm2/abc.rb +68 -0
- data/lib/{avm2 → furnace-avm2}/abc/metadata/const_pool_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/exception_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/file.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/instance_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/klass_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/metadata_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/method_body_info.rb +4 -4
- data/lib/{avm2 → furnace-avm2}/abc/metadata/method_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/multiname_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/multiname_kind_genericname.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/multiname_kind_multiname.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/multiname_kind_multinamel.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/multiname_kind_qname.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/multiname_kind_rtqname.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/multiname_kind_rtqnamel.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/namespace_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/ns_set_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/option_detail.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/option_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/record_with_traits.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/script_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/trait_class.rb +2 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/trait_function.rb +2 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/trait_info.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/trait_method.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/metadata/trait_slot.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_add.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_add_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_declocal.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_declocal_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_decrement.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_decrement_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_divide.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_equals.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_greaterequals.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_greaterthan.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_inclocal.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_inclocal_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_increment.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_increment_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_lessequals.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_lessthan.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_modulo.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_multiply.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_multiply_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_negate.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_negate_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_not.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_strictequals.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_subtract.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic/as3_subtract_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/arithmetic_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/bitwise/as3_bitand.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/bitwise/as3_bitnot.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/bitwise/as3_bitor.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/bitwise/as3_bitxor.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/bitwise/as3_lshift.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/bitwise/as3_rshift.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/bitwise/as3_urshift.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/bitwise_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/contextual_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifeq.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_iffalse.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifge.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifgt.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifle.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_iflt.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifne.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifnge.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifngt.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifnle.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifnlt.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifstricteq.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_ifstrictne.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_iftrue.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_jump.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer/as3_lookupswitch.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/control_transfer_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/exception/as3_newcatch.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/exception_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_invocation/as3_call.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_invocation/as3_callproperty.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_invocation/as3_callpropvoid.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_invocation/as3_callsuper.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_invocation/as3_callsupervoid.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_invocation_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_return/as3_returnvalue.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_return/as3_returnvoid.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/function_return_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_astypelate.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_checkfilter.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_dup.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_dxnslate.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_escxattr.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_getglobalscope.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_getlex.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_getscopeobject.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_getslot.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_hasnext.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_hasnext2.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_in.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_instanceof.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_istypelate.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_kill.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_label.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_nextname.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_nextvalue.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_nop.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_pop.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_popscope.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_setslot.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_swap.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_throw.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/generic/as3_typeof.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_getlocal.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_getlocal_0.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_getlocal_1.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_getlocal_2.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_getlocal_3.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_setlocal.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_setlocal_0.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_setlocal_1.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_setlocal_2.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store/as3_setlocal_3.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/load_store_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/object_manipulation/as3_construct.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/object_manipulation/as3_constructsuper.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/object_manipulation/as3_newactivation.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/object_manipulation/as3_newarray.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/object_manipulation/as3_newclass.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/object_manipulation/as3_newfunction.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/object_manipulation/as3_newobject.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/object_manipulation_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_constructprop.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_deleteproperty.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_findproperty.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_findpropstrict.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_getdescendants.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_getproperty.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_getsuper.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_initproperty.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_setproperty.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property/as3_setsuper.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/property_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushbyte.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushdouble.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushfalse.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushint.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushnan.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushnull.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushscope.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushshort.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushstring.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushtrue.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushundefined.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal/as3_pushwith.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/push_literal_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_applytype.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_coerce.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_coerce_a.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_coerce_b.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_coerce_s.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_convert_d.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_convert_i.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_convert_o.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_convert_s.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion/as3_convert_u.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/opcodes/type_conversion_opcode.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/primitives/opcode_sequence.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/abc/primitives/record.rb +2 -2
- data/lib/{avm2 → furnace-avm2}/binary/choice_definition.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/binary/record.rb +3 -3
- data/lib/furnace-avm2/transform.rb +6 -0
- data/lib/{avm2 → furnace-avm2}/transform/ast_build.rb +1 -1
- data/lib/{avm2 → furnace-avm2}/transform/ast_normalize.rb +1 -1
- metadata +185 -186
- data/lib/avm2/abc.rb +0 -68
- data/lib/avm2/transform.rb +0 -6
- data/lib/avm2/version.rb +0 -3
data/Gemfile.lock
CHANGED
data/bin/furnace-avm2
CHANGED
@@ -18,7 +18,7 @@ opts = Trollop::options do
|
|
18
18
|
Usage: #{__FILE__} [options]
|
19
19
|
EOS
|
20
20
|
|
21
|
-
opt :input, "Input file", :type => :string
|
21
|
+
opt :input, "Input file", :type => :string, :required => true
|
22
22
|
opt :output, "Output file", :type => :string
|
23
23
|
opt :verbose, "Be verbose", :default => false
|
24
24
|
|
@@ -37,7 +37,6 @@ EOS
|
|
37
37
|
opt :ast, "Build AST", :default => false
|
38
38
|
end
|
39
39
|
|
40
|
-
Trollop::die "Input file is required" unless opts[:input]
|
41
40
|
Trollop::die "Stray arguments: #{ARGV}" unless ARGV.empty?
|
42
41
|
|
43
42
|
abc = nil
|
data/furnace-avm2.gemspec
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
$:.push File.expand_path("../lib", __FILE__)
|
3
|
-
require "avm2/version"
|
4
3
|
|
5
4
|
Gem::Specification.new do |s|
|
6
5
|
s.name = "furnace-avm2"
|
7
|
-
s.version =
|
6
|
+
s.version = "0.0.4"
|
8
7
|
s.authors = ["Peter Zotov"]
|
9
8
|
s.email = ["whitequark@whitequark.org"]
|
10
9
|
s.homepage = "http://github.com/whitequark/furnace-avm2"
|
@@ -0,0 +1,68 @@
|
|
1
|
+
module Furnace::AVM2::ABC
|
2
|
+
AST = Furnace::AST
|
3
|
+
CFG = Furnace::CFG
|
4
|
+
end
|
5
|
+
|
6
|
+
require_relative "binary/choice_definition"
|
7
|
+
require_relative "binary/record"
|
8
|
+
|
9
|
+
require_relative "abc/primitives/record"
|
10
|
+
require_relative "abc/primitives/opcode_sequence"
|
11
|
+
|
12
|
+
require_relative "abc/opcodes/opcode"
|
13
|
+
require_relative "abc/opcodes/contextual_opcode"
|
14
|
+
|
15
|
+
require_relative "abc/opcodes/load_store_opcode"
|
16
|
+
require_relative "abc/opcodes/arithmetic_opcode"
|
17
|
+
require_relative "abc/opcodes/bitwise_opcode"
|
18
|
+
require_relative "abc/opcodes/type_conversion_opcode"
|
19
|
+
require_relative "abc/opcodes/push_literal_opcode"
|
20
|
+
require_relative "abc/opcodes/control_transfer_opcode"
|
21
|
+
require_relative "abc/opcodes/function_invocation_opcode"
|
22
|
+
require_relative "abc/opcodes/function_return_opcode"
|
23
|
+
require_relative "abc/opcodes/exception_opcode"
|
24
|
+
|
25
|
+
require_relative "abc/opcodes/property_opcode"
|
26
|
+
|
27
|
+
Dir[File.join(File.dirname(__FILE__), "abc", "opcodes", "*", "*.rb")].each do |file|
|
28
|
+
require file
|
29
|
+
end
|
30
|
+
|
31
|
+
Furnace::AVM2::ABC::Opcode::MAP.freeze
|
32
|
+
|
33
|
+
require_relative "abc/metadata/namespace_info"
|
34
|
+
require_relative "abc/metadata/ns_set_info"
|
35
|
+
require_relative "abc/metadata/multiname_kind_multiname"
|
36
|
+
require_relative "abc/metadata/multiname_kind_multinamel"
|
37
|
+
require_relative "abc/metadata/multiname_kind_qname"
|
38
|
+
require_relative "abc/metadata/multiname_kind_rtqname"
|
39
|
+
require_relative "abc/metadata/multiname_kind_rtqnamel"
|
40
|
+
require_relative "abc/metadata/multiname_kind_genericname"
|
41
|
+
require_relative "abc/metadata/multiname_info"
|
42
|
+
require_relative "abc/metadata/const_pool_info"
|
43
|
+
|
44
|
+
require_relative "abc/metadata/option_detail"
|
45
|
+
require_relative "abc/metadata/option_info"
|
46
|
+
require_relative "abc/metadata/method_info"
|
47
|
+
|
48
|
+
require_relative "abc/metadata/metadata_info"
|
49
|
+
|
50
|
+
require_relative "abc/metadata/trait_slot"
|
51
|
+
require_relative "abc/metadata/trait_method"
|
52
|
+
require_relative "abc/metadata/trait_class"
|
53
|
+
require_relative "abc/metadata/trait_function"
|
54
|
+
require_relative "abc/metadata/trait_info"
|
55
|
+
|
56
|
+
require_relative "abc/metadata/record_with_traits"
|
57
|
+
|
58
|
+
require_relative "abc/metadata/instance_info"
|
59
|
+
require_relative "abc/metadata/klass_info"
|
60
|
+
|
61
|
+
require_relative "abc/metadata/script_info"
|
62
|
+
|
63
|
+
require_relative "abc/metadata/exception_info"
|
64
|
+
require_relative "abc/metadata/method_body_info"
|
65
|
+
|
66
|
+
require_relative "abc/metadata/file"
|
67
|
+
|
68
|
+
Furnace::AVM2::Binary::Record.codegen_each
|
@@ -1,4 +1,4 @@
|
|
1
|
-
module AVM2::ABC
|
1
|
+
module Furnace::AVM2::ABC
|
2
2
|
class MethodBodyInfo < Record
|
3
3
|
root_ref :method
|
4
4
|
vuint30 :max_stack
|
@@ -21,12 +21,12 @@ module AVM2::ABC
|
|
21
21
|
|
22
22
|
def code_to_ast
|
23
23
|
pipeline = Furnace::Transform::Pipeline.new([
|
24
|
-
AVM2::Transform::ASTBuild.new(validate: true),
|
25
|
-
AVM2::Transform::ASTNormalize.new
|
24
|
+
Furnace::AVM2::Transform::ASTBuild.new(validate: true),
|
25
|
+
Furnace::AVM2::Transform::ASTNormalize.new
|
26
26
|
])
|
27
27
|
|
28
28
|
ast, = pipeline.run(code, self)
|
29
29
|
ast
|
30
30
|
end
|
31
31
|
end
|
32
|
-
end
|
32
|
+
end
|