Luobo
Luobo is a code-generator that can expands macros defined in a source file.
Basically you use luobo by extends a Converter:
require "luobo"
class LuaSpecConverter < Luobo::Converter
def regex_comment_header; '^\s*--' end
def do_hello token
"-- Hello, " + token.line_code + "!"
end
end
You write a lua file (‘test.lua`) like:
require "some_code"
-- HELLO: world
You run:
LuaSpecConverter.new('test.lua', STDOUT).convert
Then you will get those in stdout:
require "some_code"
-- Hello, world!
Inline processor like:
save to file ##FILE: name##
If you define
def do_file token
'<tt class="filename">' + token.line_code + '</tt>'
end
will become:
<tt class="filename">token.line_code</tt>
TODO:
-
block inside comments
-
more robust tests
-
remove bin file