Last change
on this file since 2518 was
2229,
checked in by rgrieder, 16 years ago
|
Cleaned up indentation chaos in tolua. There were tabs and 1 space indentations, even mixed in a single block.
It should now be possible to actually pimp these files.
|
File size:
864 bytes
|
Rev | Line | |
---|
[1650] | 1 | -- extract code with tolua_hide, and also |
---|
| 2 | function extract_code(fn,s) |
---|
[2229] | 3 | local code = '\n$#include "'..fn..'"\n' |
---|
| 4 | s= "\n" .. s .. "\n" -- add blank lines as sentinels |
---|
| 5 | local _,e,c,t = strfind(s, "\n([^\n]-)[Tt][Oo][Ll][Uu][Aa]_([^%s]*)[^\n]*\n") |
---|
| 6 | while e do |
---|
| 7 | t = strlower(t) |
---|
| 8 | if t == "begin" then |
---|
| 9 | _,e,c = strfind(s,"(.-)\n[^\n]*[Tt][Oo][Ll][Uu][Aa]_[Ee][Nn][Dd][^\n]*\n",e) |
---|
| 10 | if not e then |
---|
| 11 | tolua_error("Unbalanced 'tolua_begin' directive in header file") |
---|
| 12 | end |
---|
| 13 | end |
---|
| 14 | c = c.."\n" |
---|
| 15 | c = string.gsub(c, "\n[^\n]*[Tt][Oo][Ll][Uu][Aa]_[hH][iI][Dd][eE][^\n]*\n", "\n"); |
---|
| 16 | c = string.gsub(c, "#define[^%(\n]*%(.-\n", "\n") |
---|
| 17 | code = code .. c |
---|
| 18 | _,e,c,t = strfind(s, "\n([^\n]-)[Tt][Oo][Ll][Uu][Aa]_([^%s]*)[^\n]*\n",e) |
---|
| 19 | end |
---|
| 20 | return code |
---|
[1650] | 21 | end |
---|
Note: See
TracBrowser
for help on using the repository browser.