"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/ragel.lm" between
ragel-7.0.0.11.tar.gz and ragel-7.0.0.12.tar.gz

About: Ragel compiles executable finite state machines from regular languages (C, C++, Obj-C, C#, D, Java, Go and Ruby). Development version.

ragel.lm  (ragel-7.0.0.11):ragel.lm  (ragel-7.0.0.12)
skipping to change at line 166 skipping to change at line 166
token string / token string /
'"' ( [^"\\] | '\\' any )* '"' 'i'? | '"' ( [^"\\] | '\\' any )* '"' 'i'? |
"'" ( [^'\\] | '\\' any )* "'" 'i'? | "'" ( [^'\\] | '\\' any )* "'" 'i'? |
"[" ( [^\]\\] | '\\' any )* "]" 'i'? #| "[" ( [^\]\\] | '\\' any )* "]" 'i'? #|
#"/" ( [^\/\\] | '\\' any )* "/" 'i'? #"/" ( [^\/\\] | '\\' any )* "/" 'i'?
/ /
token open /'{'/ -ni token open /'{'/ -ni
token close ni- /'}'/ token close ni- /'}'/
token c_any / any / token c_any / any /
end end
# Garbling up a machine, no interpretation # Garbling up a machine, no interpretation
def tok def tok
[word] [word]
| [uint] | [uint]
| [hex] | [hex]
| [string] | [string]
| [open host_tok* h_close] | [open host_tok* h_close]
| [c_any] | [c_any]
skipping to change at line 306 skipping to change at line 304
literal `%%--{ -ni `%%++{ -ni literal `%%--{ -ni `%%++{ -ni
token include_tok token include_tok
/'include'/ /'include'/
{ {
# Take off the include token. # Take off the include token.
input->pull( match_length ) input->pull( match_length )
# Parse the include details, up to the the ';' an d stop there. # Parse the include details, up to the the ';' an d stop there.
parse_stop Spec: include_spec[input] parse_stop Spec: include_spec(input)[]
Fn: str Fn: str
Machine: str Machine: str
if Spec.string if Spec.string
Fn = $Spec.string Fn = $Spec.string
if Spec.word if Spec.word
Machine = $Spec.word Machine = $Spec.word
Stream: stream = ragelInclude( Fn, Machine ) Stream: stream = ragelInclude( Fn, Machine )
skipping to change at line 331 skipping to change at line 329
} }
} }
token import_tok token import_tok
/'import'/ /'import'/
{ {
# Take off the include token. # Take off the include token.
input->pull( match_length ) input->pull( match_length )
# Parse the import details, up to the the ';' and stop there. # Parse the import details, up to the the ';' and stop there.
parse_stop Spec: import_spec[input] parse_stop Spec: import_spec(input)[]
Fn: str Fn: str
if Spec.string if Spec.string
Fn = $Spec.string Fn = $Spec.string
Stream: stream = ragelImport( Fn ) Stream: stream = ragelImport( Fn )
if Stream { if Stream {
input->push( "}++%%" ) input->push( "}++%%" )
input->push_stream( Stream ) input->push_stream( Stream )
input->push( "%%++{" ) input->push( "%%++{" )
} }
} }
literal `machine `action `variable `alphtype literal `machine `action `variable `alphtype
`access `write `getkey `export `prepush `access `write `getkey `export `prepush
`postpop `nfaprepush `nfapostpop `postpop `nfaprepush `nfapostpop
literal `:nfa `:cond `:condplus `:condstar `): literal `:nfa `:nfa_greedy `:nfa_lazy `:nfa_wrap
`:nfa_wrap_greedy `:nfa_wrap_lazy
`:cond `:condplus `:condstar `):
token string / token string /
'"' ( [^"\\] | '\\' any )* '"' 'i'? | '"' ( [^"\\] | '\\' any )* '"' 'i'? |
"'" ( [^'\\] | '\\' any )* "'" 'i'? "'" ( [^'\\] | '\\' any )* "'" 'i'?
/ /
token lex_regex_open /'/'/ -ni token lex_regex_open /'/'/ -ni
token lex_sqopen_pos /'['/ -ni token lex_sqopen_pos /'['/ -ni
token lex_sqopen_neg /'[^'/ -ni token lex_sqopen_neg /'[^'/ -ni
skipping to change at line 639 skipping to change at line 639
def factor_neg def factor_neg
[`! factor_neg] :Bang [`! factor_neg] :Bang
| [`^ factor_neg] :Caret | [`^ factor_neg] :Caret
| [factor] :Base | [factor] :Base
def opt_max_arg def opt_max_arg
[`, action_ref] :Action [`, action_ref] :Action
| [] :Empty | [] :Empty
def nfastar def nfastar
[`:nfa] [`:nfa] :Default
| [`:nfa_lazy] :Lazy
| [`:nfa_greedy] :Greedy
def nfawrap
[`:nfa_wrap] :Default
| [`:nfa_wrap_lazy] :Lazy
| [`:nfa_wrap_greedy] :Greedy
def colon_cond def colon_cond
[`:cond] :Cond [`:cond] :Cond
| [`:condstar] :CondStar | [`:condstar] :CondStar
| [`:condplus] :CondPlus | [`:condplus] :CondPlus
def factor def factor
[alphabet_num] :AlphabetNum [alphabet_num] :AlphabetNum
| [word] :Word | [word] :Word
| [string] :String | [string] :String
| [lex_sqopen_pos reg_or_data re_or_sqclose] :PosOrBlock | [lex_sqopen_pos reg_or_data re_or_sqclose] :PosOrBlock
| [lex_sqopen_neg reg_or_data re_or_sqclose] :NegOrBlock | [lex_sqopen_neg reg_or_data re_or_sqclose] :NegOrBlock
| [lex_regex_open regex re_close] :Regex | [lex_regex_open regex re_close] :Regex
| [RL1: range_lit `.. RL2: range_lit] :Range | [RL1: range_lit `.. RL2: range_lit] :Range
| [RL1: range_lit `../i RL2: range_lit] :RangeIndep | [RL1: range_lit `../i RL2: range_lit] :RangeIndep
| [nfastar `( expression `, | [nfastar `( expression `,
Push: action_ref `, Pop: action_ref `, Init: action_ref ` , Stay: action_ref `, Push: action_ref `, Pop: action_ref `, Init: action_ref ` , Stay: action_ref `,
Repeat: action_ref `, Exit: action_ref `):] :Nfa Repeat: action_ref `, Exit: action_ref `):] :Nfa
| [nfawrap `( expression `,
Push: action_ref `, Pop: action_ref `, Init: action_ref `
, Stay: action_ref `,
Exit: action_ref `):] :NfaWrap
| [colon_cond `( expression `, | [colon_cond `( expression `,
Init: action_ref `, Inc: action_ref `, Min: action_ref Op tMax: opt_max_arg `):] :Cond Init: action_ref `, Inc: action_ref `, Min: action_ref Op tMax: opt_max_arg `):] :Cond
| [`( join `)] :Join | [`( join `)] :Join
def regex def regex
[reg_item_rep_list] :List [reg_item_rep_list] :List
def reg_item_rep_list def reg_item_rep_list
[reg_item_rep_list reg_item_rep] :Rec [reg_item_rep_list reg_item_rep] :Rec
| [] :Base | [] :Base
skipping to change at line 716 skipping to change at line 726
| [assignment] :Assignment | [assignment] :Assignment
| [action_spec] :ActionSpec | [action_spec] :ActionSpec
def lm_stmt_list def lm_stmt_list
[lm_stmt_list lm_stmt] :Rec [lm_stmt_list lm_stmt] :Rec
| [lm_stmt] :Base | [lm_stmt] :Base
def lm def lm
[join] :Join [join] :Join
| [`|* lm_stmt_list `*|] :Lm | [`|* lm_stmt_list `*|] :Lm
| [`:nfa `|* lm_stmt_list `*|] :LmNfa
# #
# Actions # Actions
# #
def action_param def action_param
[word] :Word [word] :Word
def action_param_list def action_param_list
[action_param_list `, action_param] :Rec [action_param_list `, action_param] :Rec
| [action_param] :Base | [action_param] :Base
 End of changes. 8 change blocks. 
6 lines changed or deleted 18 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)