Created by Casey Dahlin on 2010-02-10 and last modified on 2010-02-20
Get this branch:
bzr branch lp:~cjdahlin/libnih/nih-parse
Only Casey Dahlin can upload to this branch. If you are Casey Dahlin please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Casey Dahlin

Recent revisions

1059. By Casey Dahlin on 2010-02-20

* nih/parse.c (nih_parse, nih_parse_or_raise): Report an error when we fail to

1058. By Casey Dahlin on 2010-02-20

* nih/tests/test_parse.c: Add some style-mandated whitespace

1057. By Casey Dahlin on 2010-02-20

* nih/parse.c (nih_parse_backtrack, nih_parse): Break out the backtracking
portion of nih_parse into its own function.

1056. By Casey Dahlin on 2010-02-18

* nih/parse.c (nih_parse_child_r): New pseudo-recursive function to handle
matching of a child reference and the repetition/flags that may imply.
(nih_parse): use nih_parse_child_r

1055. By Casey Dahlin on 2010-02-17

* nih/parse.c, nih/parse.h, nih/tests/test_parse.c (nih_parse_symbol_matches,
nih_parse_terminal_symbol_matches_r, nih_parse_symbol_matches_r): remove the
_symbol_matches from the ends of these function names.

1054. By Casey Dahlin on 2010-02-17

* nih/parse.c (nih_parse_terminal_symbol_matches): Turn into a virtual
NihParseFrame-style function.

1053. By Casey Dahlin on 2010-02-17

* nih/parse.c (NIH_PARSE_CALL): Make DO_CALL generic
(nih_parse_symbol_matches_r): Use NIH_PARSE_CALL instead of a local DO_CALL

1052. By Casey Dahlin on 2010-02-16

* nih/parse.c (XOR): Single expansion implementation.

1051. By Casey Dahlin on 2010-02-16

* nih/parse.c (NihParseRecursiveFunction): New type for a special class of
functions that simulate recursive semantics without the stack.
(NihParseFrame): New struct for a generic virtual stack frame.
(NihParseSymbolMatchesData): Essentially a global version of the previous
struct frame * inside of nih_parse_symbol_matches.
(NIH_PARSE_OOM_ABORT): Signal OOM for functions using NihParseFrame. Abort the
entire virtual stack.
(NIH_PARSE_POP_FRAME): Conduct a return on an NihParseFrame stack.
(text_pos, text_end): Make these globals for a bit while we move things around.
(nih_parse_symbol_matches): Make this function simply process a virtual
function call with NihParseFrame and return the final result.
(nih_parse_symbol_matches_r): A virtually-recursive function which does what
nih_parse_symbol_matches used to do.

1050. By Casey Dahlin on 2010-02-10

Merge nih_parse with latest trunk.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar RepositoryFormatKnitPack6RichRoot (bzr 1.9)
This branch contains Public information 
Everyone can see this information.