0
-Doc = a:StartList ( Block { a =
pushelt($$, a); } )*
0
+Doc = a:StartList ( Block { a =
cons($$, a); } )*
0
{ parse_result = reverse(a); }
0
@@ -55,16 +55,16 @@ AtxInline = !Newline !(Sp '#'* Sp Newline) Inline
0
AtxStart = < ( "######" | "#####" | "####" | "###" | "##" | "#" ) >
0
{ $$ = mk_element(H1 + (strlen(yytext) - 1)); }
0
-AtxHeading = s:AtxStart Sp a:StartList ( AtxInline { a =
pushelt($$, a); } )+ (Sp '#'* Sp)? Newline
0
+AtxHeading = s:AtxStart Sp a:StartList ( AtxInline { a =
cons($$, a); } )+ (Sp '#'* Sp)? Newline
0
{ $$ = mk_list(s->key, a);
0
SetextHeading = SetextHeading1 | SetextHeading2
0
-SetextHeading1 = a:StartList ( !Endline Inline { a =
pushelt($$, a); } )+ Newline "===" '='* Newline
0
+SetextHeading1 = a:StartList ( !Endline Inline { a =
cons($$, a); } )+ Newline "===" '='* Newline
0
{ $$ = mk_list(H1, a); }
0
-SetextHeading2 = a:StartList ( !Endline Inline { a =
pushelt($$, a); } )+ Newline "---" '-'* Newline
0
+SetextHeading2 = a:StartList ( !Endline Inline { a =
cons($$, a); } )+ Newline "---" '-'* Newline
0
{ $$ = mk_list(H2, a); }
0
Heading = AtxHeading | SetextHeading
0
@@ -75,9 +75,9 @@ BlockQuote = a:BlockQuoteRaw
0
BlockQuoteRaw = a:StartList
0
- (( '>' ' '? Line { a = pushelt($$, a); } )
0
- ( !'>' !BlankLine Line { a = pushelt($$, a); } )*
0
- ( BlankLine { a = pushelt(mk_str("\n"), a); } )*
0
+ (( '>' ' '? Line { a = cons($$, a); } )
0
+ ( !'>' !BlankLine Line { a = cons($$, a); } )*
0
+ ( BlankLine { a = cons(mk_str("\n"), a); } )*
0
{ $$ = mk_str_from_list(a, true);
0
@@ -86,11 +86,11 @@ BlockQuoteRaw = a:StartList
0
NonblankIndentedLine = !BlankLine IndentedLine
0
VerbatimChunk = a:StartList
0
- ( BlankLine { a = pushelt(mk_str("\n"), a); } )*
0
- ( NonblankIndentedLine { a = pushelt($$, a); } )+
0
+ ( BlankLine { a = cons(mk_str("\n"), a); } )*
0
+ ( NonblankIndentedLine { a = cons($$, a); } )+
0
{ $$ = mk_str_from_list(a, false); }
0
-Verbatim = a:StartList ( VerbatimChunk { a =
pushelt($$, a); } )+
0
+Verbatim = a:StartList ( VerbatimChunk { a =
cons($$, a); } )+
0
{ $$ = mk_str_from_list(a, false);
0
@@ -106,7 +106,7 @@ Bullet = NonindentSpace ('+' | '*' | '-') Spacechar+
0
BulletList = BulletListTight | BulletListLoose
0
BulletListTight = a:StartList
0
- ( BulletListItem { a =
pushelt($$, a); } )+
0
+ ( BulletListItem { a =
cons($$, a); } )+
0
BlankLine* !BulletListLoose
0
{ $$ = mk_list(BULLETLIST, a); }
0
@@ -116,7 +116,7 @@ BulletListLoose = a:StartList
0
li->contents.str = realloc(li->contents.str, strlen(li->contents.str) + 3);
0
strcat(li->contents.str, "\n\n"); /* In loose list, \n\n added to end of each element */
0
{ $$ = mk_list(BULLETLIST, a); }
0
@@ -124,8 +124,8 @@ BulletListItem = !HorizontalRule &Bullet ListItem
0
ListItem = ( Bullet | Enumerator )
0
- ListBlock { a = pushelt($$, a); }
0
- ( ListContinuationBlock { a = pushelt($$, a); } )*
0
+ ListBlock { a = cons($$, a); }
0
+ ( ListContinuationBlock { a = cons($$, a); } )*
0
raw = mk_str_from_list(a, false);
0
@@ -134,17 +134,17 @@ ListItem = ( Bullet | Enumerator )
0
ListBlock = a:StartList
0
- Line { a = pushelt($$, a); }
0
- ( ListBlockLine { a = pushelt($$, a); } )*
0
+ Line { a = cons($$, a); }
0
+ ( ListBlockLine { a = cons($$, a); } )*
0
{ $$ = mk_str_from_list(a, false); }
0
ListContinuationBlock = a:StartList
0
{ if (strlen(yytext) == 0)
0
- a =
pushelt(mk_str("\001"), a); /* block separator */
0
+ a =
cons(mk_str("\001"), a); /* block separator */
0
- a = pushelt(mk_str(yytext), a); } )
0
- ( Indent ListBlock { a = pushelt($$, a); } )+
0
+ a = cons(mk_str(yytext), a); } )
0
+ ( Indent ListBlock { a = cons($$, a); } )+
0
{ $$ = mk_str_from_list(a, false); }
0
Enumerator = NonindentSpace [0-9]+ '.' Spacechar+
0
@@ -152,7 +152,7 @@ Enumerator = NonindentSpace [0-9]+ '.' Spacechar+
0
OrderedList = OrderedListTight | OrderedListLoose
0
OrderedListTight = a:StartList
0
- ( OrderedListItem { a =
pushelt($$, a); } )+
0
+ ( OrderedListItem { a =
cons($$, a); } )+
0
BlankLine* !OrderedListLoose
0
{ $$ = mk_list(ORDEREDLIST, a); }
0
@@ -162,7 +162,7 @@ OrderedListLoose = a:StartList
0
li->contents.str = realloc(li->contents.str, strlen(li->contents.str) + 3);
0
strcat(li->contents.str, "\n\n"); /* In loose list, \n\n added to end of each element */
0
{ $$ = mk_list(ORDEREDLIST, a); }
0
@@ -328,8 +328,8 @@ HtmlBlockType = "address" | "blockquote" | "center" | "dir" | "div" | "dl" | "fi
0
"H4" | "H5" | "H6" | "HR" | "ISINDEX" | "MENU" | "NOFRAMES" | "NOSCRIPT" | "OL" | "P" | "PRE" | "TABLE" |
0
"UL" | "DD" | "DT" | "FRAMESET" | "LI" | "TBODY" | "TD" | "TFOOT" | "TH" | "THEAD" | "TR" | "SCRIPT"
0
-Inlines = a:StartList ( !Endline Inline { a = pushelt($$, a); }
0
- | c:Endline &Inline { a = pushelt(c, a); } )+ Endline?
0
+Inlines = a:StartList ( !Endline Inline { a = cons($$, a); }
0
+ | c:Endline &Inline { a = cons(c, a); } )+ Endline?
0
{ $$ = mk_list(LIST, a); }
0
@@ -382,7 +382,7 @@ Emph = EmphStar | EmphUl
0
EmphStar = OneStar !Spacechar !Newline
0
- ( EmphInlineStar { a =
pushelt($$, a); } )+
0
+ ( EmphInlineStar { a =
cons($$, a); } )+
0
{ $$ = mk_list(EMPH, a); }
0
@@ -391,7 +391,7 @@ EmphInlineStar = StrongStar
0
EmphUl = OneUl !Spacechar !Newline
0
- ( EmphInlineUl { a =
pushelt($$, a); } )+
0
+ ( EmphInlineUl { a =
cons($$, a); } )+
0
{ $$ = mk_list(EMPH, a); }
0
@@ -402,7 +402,7 @@ Strong = StrongStar | StrongUl
0
StrongStar = TwoStar !Spacechar !Newline
0
- ( StrongInlineStar { a =
pushelt($$, a); } )+
0
+ ( StrongInlineStar { a =
cons($$, a); } )+
0
{ $$ = mk_list(STRONG, a); }
0
@@ -410,7 +410,7 @@ StrongInlineStar = !(Spnl TwoStar) Inline
0
StrongUl = TwoUl !Spacechar !Newline
0
- ( StrongInlineUl { a =
pushelt($$, a); } )+
0
+ ( StrongInlineUl { a =
cons($$, a); } )+
0
{ $$ = mk_list(STRONG, a); }
0
@@ -432,8 +432,8 @@ ReferenceLinkDouble = a:Label < Spnl > !"[]" b:Label
0
result = mk_element(LIST);
0
- result->children = pushelt(mk_str("["), pushelt(a, pushelt(mk_str("]"), pushelt(mk_str(yytext),
0
- pushelt(mk_str("["), pushelt(b, mk_str("]")))))));
0
+ result->children = cons(mk_str("["), cons(a, cons(mk_str("]"), cons(mk_str(yytext),
0
+ cons(mk_str("["), cons(b, mk_str("]")))))));
0
@@ -447,7 +447,7 @@ ReferenceLinkSingle = a:Label < (Spnl "[]")? >
0
result = mk_element(LIST);
0
- result->children =
pushelt(mk_str("["), pushelt(a, pushelt(mk_str("]"), mk_str(yytext))));
0
+ result->children =
cons(mk_str("["), cons(a, cons(mk_str("]"), mk_str(yytext))));
0
@@ -492,7 +492,7 @@ Reference = NonindentSpace !"[]" l:Label ':' Spnl s:RefSrc Spnl t:RefTitle Blank
0
Label = '[' ( !'^' &{ extension(EXT_NOTES) } | &. &{ !extension(EXT_NOTES) } )
0
- ( !']' Inline { a =
pushelt($$, a); } )*
0
+ ( !']' Inline { a =
cons($$, a); } )*
0
{ $$ = mk_list(LIST, a); }
0
@@ -512,7 +512,7 @@ RefTitleDouble = '"' < ( !('"' Sp Newline | Newline) . )* > '"'
0
RefTitleParens = '(' < ( !(')' Sp Newline | Newline) . )* > ')'
0
References = a:StartList
0
- ( b:Reference { a =
pushelt(b, a); } | SkipBlock )*
0
+ ( b:Reference { a =
cons(b, a); } | SkipBlock )*
0
{ references = reverse(a); }
0
@@ -563,7 +563,7 @@ Indent = "\t" | " "
0
IndentedLine = Indent Line
0
OptionallyIndentedLine = Indent? Line
0
-# StartList starts a list data structure that can be added to with
pushelt:
0
+# StartList starts a list data structure that can be added to with
cons:
0
@@ -602,7 +602,7 @@ SingleQuoteEnd = '\'' !Alphanumeric
0
SingleQuoted = SingleQuoteStart
0
- ( !SingleQuoteEnd b:Inline { a =
pushelt(b, a); } )+
0
+ ( !SingleQuoteEnd b:Inline { a =
cons(b, a); } )+
0
{ $$ = mk_list(SINGLEQUOTED, a); }
0
@@ -612,7 +612,7 @@ DoubleQuoteEnd = '"'
0
DoubleQuoted = DoubleQuoteStart
0
- ( !DoubleQuoteEnd b:Inline { a =
pushelt(b, a); } )+
0
+ ( !DoubleQuoteEnd b:Inline { a =
cons(b, a); } )+
0
{ $$ = mk_list(DOUBLEQUOTED, a); }
0
@@ -639,8 +639,8 @@ RawNoteReference = "[^" < ( !Newline !']' . )+ > ']'
0
Note = &{ extension(EXT_NOTES) }
0
NonindentSpace ref:RawNoteReference ':' Sp
0
- ( RawNoteBlock { a = pushelt($$, a); } )
0
- ( &Indent RawNoteBlock { a = pushelt($$, a); } )*
0
+ ( RawNoteBlock { a = cons($$, a); } )
0
+ ( &Indent RawNoteBlock { a = cons($$, a); } )*
0
{ $$ = mk_list(NOTE, a);
0
$$->contents.str = strdup(ref->contents.str);
0
@@ -648,18 +648,18 @@ Note = &{ extension(EXT_NOTES) }
0
InlineNote = &{ extension(EXT_NOTES) }
0
- ( !']' Inline { a =
pushelt($$, a); } )+
0
+ ( !']' Inline { a =
cons($$, a); } )+
0
{ $$ = mk_list(NOTE, a);
0
$$->contents.str = 0; }
0
- ( b:Note { a =
pushelt(b, a); } | SkipBlock )*
0
+ ( b:Note { a =
cons(b, a); } | SkipBlock )*
0
{ notes = reverse(a); }
0
RawNoteBlock = a:StartList
0
- ( !BlankLine OptionallyIndentedLine { a = pushelt($$, a); } )+
0
- ( < BlankLine* > { a = pushelt(mk_str(yytext), a); } )
0
+ ( !BlankLine OptionallyIndentedLine { a = cons($$, a); } )+
0
+ ( < BlankLine* > { a = cons(mk_str(yytext), a); } )
0
{ $$ = mk_str_from_list(a, true);
Comments
No one has commented yet.