Class: Kumi::Support::SNASTPrinter
- Inherits:
-
Object
- Object
- Kumi::Support::SNASTPrinter
- Defined in:
- lib/kumi/support/snast_printer.rb
Constant Summary collapse
- NAST =
Kumi::Core::NAST
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(verbosity: :default) ⇒ SNASTPrinter
constructor
A new instance of SNASTPrinter.
- #print(snast_module) ⇒ Object
Constructor Details
#initialize(verbosity: :default) ⇒ SNASTPrinter
Returns a new instance of SNASTPrinter.
12 13 14 |
# File 'lib/kumi/support/snast_printer.rb', line 12 def initialize(verbosity: :default) @verbosity = verbosity end |
Class Method Details
.print(snast_module, verbosity: :default) ⇒ Object
8 9 10 |
# File 'lib/kumi/support/snast_printer.rb', line 8 def self.print(snast_module, verbosity: :default) new(verbosity: verbosity).print(snast_module) end |
Instance Method Details
#print(snast_module) ⇒ Object
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/kumi/support/snast_printer.rb', line 16 def print(snast_module) return "nil" unless snast_module output = ["(SNAST"] snast_module.decls.each do |_, decl| output << format_node(decl, 1) end output << ")" output.join("\n") end |