aboutsummaryrefslogtreecommitdiffstats
path: root/tool/serb.rb
diff options
context:
space:
mode:
Diffstat (limited to 'tool/serb.rb')
-rw-r--r--tool/serb.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/tool/serb.rb b/tool/serb.rb
new file mode 100644
index 0000000000..edba8966c7
--- /dev/null
+++ b/tool/serb.rb
@@ -0,0 +1,17 @@
+def serb(str, var)
+ result = ''
+ str.each_line {|line|
+ if /\A!/ =~ line
+ result << $'
+ else
+ line.split(/(<%.*?%>)/).each {|x|
+ if /\A<%(.*)%>\z/ =~ x
+ result << "#{var} << (#{$1}).to_s\n"
+ else
+ result << "#{var} << #{x.dump}\n"
+ end
+ }
+ end
+ }
+ result
+end