Module: Finitio::Syntax::System
- Includes:
- Node
- Defined in:
- lib/finitio/syntax/system.rb
Instance Method Summary
collapse
Methods included from Node
included, #metadata, #resolve_ruby_const, #unique_names!
Instance Method Details
#compile(system) ⇒ Object
8
9
10
11
12
13
|
# File 'lib/finitio/syntax/system.rb', line 8
def compile(system)
imports.compile(system) if imports
definitions.compile(system)
main_type.compile(system) if main_type
system
end
|
#to_ast ⇒ Object
15
16
17
18
19
20
21
22
|
# File 'lib/finitio/syntax/system.rb', line 15
def to_ast
ast = [ :system ]
imports_ast = imports.to_ast
ast << imports_ast unless imports_ast.size == 1
ast += definitions.to_ast
ast << main_type.to_ast if main_type
ast
end
|