wrapping class / module expressions in own node

This commit is contained in:
Torsten Ruger
2015-09-20 16:03:27 +03:00
parent 20b6c9b476
commit e8bc570d25
19 changed files with 332 additions and 310 deletions

View File

@ -3,12 +3,13 @@ class FooBo
end
-- -- --
s(:expressions,
s(:class, :FooBo,
s(:derives, nil),
s(:call,
s(:name, :call),
s(:arguments,
s(:int, 35)),
s(:receiver,
s(:module, "Bar")))))
s(:expressions,
s(:class, :FooBo,
s(:derives, nil),
s(:expressions,
s(:call,
s(:name, :call),
s(:arguments,
s(:int, 35)),
s(:receiver,
s(:module, "Bar"))))))

View File

@ -4,16 +4,17 @@ module Fibo
end
-- -- --
s(:expressions,
s(:module, :Fibo,
s(:assign,
s(:name, :a),
s(:operator, "+",
s(:int, 5),
s(:name, :foo))),
s(:call,
s(:name, :bar),
s(:arguments,
s(:name, :b),
s(:name, :a),
s(:name, :r)))))
s(:expressions,
s(:module, :Fibo,
s(:expressions,
s(:assign,
s(:name, :a),
s(:operator, "+",
s(:int, 5),
s(:name, :foo))),
s(:call,
s(:name, :bar),
s(:arguments,
s(:name, :b),
s(:name, :a),
s(:name, :r))))))

View File

@ -10,16 +10,17 @@ end
-- -- --
s(:expressions,
s(:module, :Fibo,
s(:function, :int,
s(:name, :fibonaccit),
s(:parameters,
s(:parameter, :int, :n)),
s(:expressions,
s(:field_def, :int, :a,
s(:int, 0)),
s(:return,
s(:name, :a)))),
s(:call,
s(:name, :fibonaccit),
s(:arguments,
s(:int, 10)))))
s(:expressions,
s(:function, :int,
s(:name, :fibonaccit),
s(:parameters,
s(:parameter, :int, :n)),
s(:expressions,
s(:field_def, :int, :a,
s(:int, 0)),
s(:return,
s(:name, :a)))),
s(:call,
s(:name, :fibonaccit),
s(:arguments,
s(:int, 10))))))

View File

@ -5,12 +5,14 @@ module FooBo
end
-- -- --
s(:expressions,
s(:module, :FooBo,
s(:class, :Bar,
s(:derives, nil),
s(:assign,
s(:name, :a),
s(:operator, "+",
s(:int, 5),
s(:name, :foo))))))
s(:expressions,
s(:module, :FooBo,
s(:expressions,
s(:class, :Bar,
s(:derives, nil),
s(:expressions,
s(:assign,
s(:name, :a),
s(:operator, "+",
s(:int, 5),
s(:name, :foo))))))))