module Eggshell::Compiler::Assembler
Public Instance Methods
Generates a new function that statements will be inserted into.
# File lib/eggshell/compiler.rb, line 28 def add_func(name) end
Inject lines into current handler. If a line is either a block or macro, call {@see assemble()} on it.
# File lib/eggshell/compiler.rb, line 49 def add_lines(lines) end
Iterates over parse tree to generate compiler events.
# File lib/eggshell/compiler.rb, line 24 def assemble(parse_tree) end
Inserts lines from an equivalent
# File lib/eggshell/compiler.rb, line 53 def chain_append(lines) end
# File lib/eggshell/compiler.rb, line 71 def commit_handler(name, args) @pending_funcs[-1][1] << insert_statement(HANDLER_COMMIT, 'HANDLER_NAME' => name, 'ARGS' => args.inspect) end
Inserts a raw line into output.
# File lib/eggshell/compiler.rb, line 36 def do_line(line) end
Sets assembler-specific options. This should initialize the main method via {@see add_func
()}. @param Eggshell::Processor
A reference processor instance to validate certain conditions (e.g. what to do in a block-macro-block chain).
# File lib/eggshell/compiler.rb, line 20 def init(processor, opts = {}) end
# File lib/eggshell/compiler.rb, line 68 def pipe_append_end end
Inserts statements to append macro output into previous block.
# File lib/eggshell/compiler.rb, line 65 def pipe_append_start end
Inserts statements to inject inlined macro output into previous block.
# File lib/eggshell/compiler.rb, line 61 def pipe_inline_end end
Inserts statements to prepare for inlined macro output.
# File lib/eggshell/compiler.rb, line 57 def pipe_inline_start end
Pops the current function off stack, sending statements to the main function.
# File lib/eggshell/compiler.rb, line 32 def pop_func end
Initializes handler and lines for a block.
# File lib/eggshell/compiler.rb, line 40 def start_block(name, args, lines) end
Initializes handler and lines for a macro.
# File lib/eggshell/compiler.rb, line 44 def start_macro(name, args, lines) end
# File lib/eggshell/compiler.rb, line 75 def write(stream) end