ext/dtext/dtext.c in dtext_rb-1.0.5 vs ext/dtext/dtext.c in dtext_rb-1.0.6
- old
+ new
@@ -68,29 +68,119 @@
static const int BLOCK_H4 = 26;
static const int BLOCK_H5 = 27;
static const int BLOCK_H6 = 28;
-#line 966 "ext/dtext/dtext.rl"
+#line 976 "ext/dtext/dtext.rl"
#line 78 "ext/dtext/dtext.c"
-static const int dtext_start = 245;
-static const int dtext_first_final = 245;
-static const int dtext_error = -1;
+static const unsigned char _dtext_to_state_actions[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 57, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 57,
+ 0, 57, 57, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 57, 0, 57,
+ 0, 57, 0, 57, 0, 0, 0, 0,
+ 0
+};
-static const int dtext_en_inline = 260;
-static const int dtext_en_code = 295;
-static const int dtext_en_nodtext = 297;
-static const int dtext_en_table = 299;
-static const int dtext_en_list = 301;
-static const int dtext_en_main = 245;
+static const unsigned char _dtext_from_state_actions[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 58, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 58,
+ 0, 58, 58, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 58, 0, 58,
+ 0, 58, 0, 58, 0, 0, 0, 0,
+ 0
+};
+static const int dtext_start = 256;
+static const int dtext_first_final = 256;
+static const int dtext_error = 0;
-#line 969 "ext/dtext/dtext.rl"
+static const int dtext_en_textile_link_desc = 271;
+static const int dtext_en_textile_link = 273;
+static const int dtext_en_inline = 274;
+static const int dtext_en_code = 309;
+static const int dtext_en_nodtext = 311;
+static const int dtext_en_table = 313;
+static const int dtext_en_list = 315;
+static const int dtext_en_main = 256;
+
+#line 979 "ext/dtext/dtext.rl"
+
static inline void underscore_string(char * str, size_t len) {
for (size_t i=0; i<len; ++i) {
if (str[i] == ' ') {
str[i] = '_';
}
@@ -440,3987 +530,2570 @@
}
}
}
-#line 446 "ext/dtext/dtext.c"
+#line 536 "ext/dtext/dtext.c"
{
sm->cs = dtext_start;
( sm->top) = 0;
( sm->ts) = 0;
( sm->te) = 0;
( sm->act) = 0;
}
-#line 1323 "ext/dtext/dtext.rl"
+#line 1333 "ext/dtext/dtext.rl"
-#line 457 "ext/dtext/dtext.c"
+#line 547 "ext/dtext/dtext.c"
{
if ( ( sm->p) == ( sm->pe) )
goto _test_eof;
- goto _resume;
-
-_again:
- switch ( sm->cs ) {
- case 245: goto st245;
- case 246: goto st246;
- case 0: goto st0;
- case 247: goto st247;
- case 248: goto st248;
- case 1: goto st1;
- case 249: goto st249;
- case 250: goto st250;
- case 2: goto st2;
- case 251: goto st251;
- case 3: goto st3;
- case 4: goto st4;
- case 5: goto st5;
- case 6: goto st6;
- case 7: goto st7;
- case 8: goto st8;
- case 9: goto st9;
- case 10: goto st10;
- case 11: goto st11;
- case 12: goto st12;
- case 13: goto st13;
- case 14: goto st14;
- case 252: goto st252;
- case 15: goto st15;
- case 16: goto st16;
- case 17: goto st17;
- case 18: goto st18;
- case 19: goto st19;
- case 20: goto st20;
- case 21: goto st21;
- case 22: goto st22;
- case 253: goto st253;
- case 254: goto st254;
- case 23: goto st23;
- case 24: goto st24;
- case 25: goto st25;
- case 26: goto st26;
- case 27: goto st27;
- case 28: goto st28;
- case 29: goto st29;
- case 255: goto st255;
- case 30: goto st30;
- case 31: goto st31;
- case 32: goto st32;
- case 33: goto st33;
- case 34: goto st34;
- case 256: goto st256;
- case 35: goto st35;
- case 36: goto st36;
- case 37: goto st37;
- case 38: goto st38;
- case 39: goto st39;
- case 40: goto st40;
- case 41: goto st41;
- case 257: goto st257;
- case 42: goto st42;
- case 43: goto st43;
- case 44: goto st44;
- case 45: goto st45;
- case 46: goto st46;
- case 47: goto st47;
- case 258: goto st258;
- case 48: goto st48;
- case 259: goto st259;
- case 260: goto st260;
- case 261: goto st261;
- case 262: goto st262;
- case 49: goto st49;
- case 50: goto st50;
- case 51: goto st51;
- case 263: goto st263;
- case 264: goto st264;
- case 265: goto st265;
- case 266: goto st266;
- case 52: goto st52;
- case 53: goto st53;
- case 54: goto st54;
- case 55: goto st55;
- case 267: goto st267;
- case 56: goto st56;
- case 57: goto st57;
- case 58: goto st58;
- case 59: goto st59;
- case 60: goto st60;
- case 61: goto st61;
- case 62: goto st62;
- case 63: goto st63;
- case 64: goto st64;
- case 65: goto st65;
- case 66: goto st66;
- case 67: goto st67;
- case 68: goto st68;
- case 69: goto st69;
- case 70: goto st70;
- case 71: goto st71;
- case 72: goto st72;
- case 268: goto st268;
- case 269: goto st269;
- case 270: goto st270;
- case 271: goto st271;
- case 73: goto st73;
- case 74: goto st74;
- case 75: goto st75;
- case 76: goto st76;
- case 77: goto st77;
- case 78: goto st78;
- case 79: goto st79;
- case 272: goto st272;
- case 273: goto st273;
- case 80: goto st80;
- case 81: goto st81;
- case 82: goto st82;
- case 83: goto st83;
- case 84: goto st84;
- case 85: goto st85;
- case 86: goto st86;
- case 87: goto st87;
- case 274: goto st274;
- case 275: goto st275;
- case 88: goto st88;
- case 89: goto st89;
- case 90: goto st90;
- case 91: goto st91;
- case 92: goto st92;
- case 93: goto st93;
- case 276: goto st276;
- case 277: goto st277;
- case 94: goto st94;
- case 95: goto st95;
- case 96: goto st96;
- case 97: goto st97;
- case 98: goto st98;
- case 99: goto st99;
- case 278: goto st278;
- case 279: goto st279;
- case 100: goto st100;
- case 101: goto st101;
- case 102: goto st102;
- case 103: goto st103;
- case 104: goto st104;
- case 105: goto st105;
- case 280: goto st280;
- case 106: goto st106;
- case 107: goto st107;
- case 281: goto st281;
- case 108: goto st108;
- case 109: goto st109;
- case 110: goto st110;
- case 111: goto st111;
- case 112: goto st112;
- case 282: goto st282;
- case 113: goto st113;
- case 114: goto st114;
- case 115: goto st115;
- case 116: goto st116;
- case 283: goto st283;
- case 284: goto st284;
- case 117: goto st117;
- case 118: goto st118;
- case 119: goto st119;
- case 120: goto st120;
- case 121: goto st121;
- case 122: goto st122;
- case 285: goto st285;
- case 123: goto st123;
- case 124: goto st124;
- case 286: goto st286;
- case 287: goto st287;
- case 125: goto st125;
- case 126: goto st126;
- case 127: goto st127;
- case 128: goto st128;
- case 129: goto st129;
- case 288: goto st288;
- case 289: goto st289;
- case 130: goto st130;
- case 131: goto st131;
- case 132: goto st132;
- case 133: goto st133;
- case 134: goto st134;
- case 135: goto st135;
- case 136: goto st136;
- case 137: goto st137;
- case 138: goto st138;
- case 139: goto st139;
- case 140: goto st140;
- case 141: goto st141;
- case 142: goto st142;
- case 143: goto st143;
- case 290: goto st290;
- case 144: goto st144;
- case 145: goto st145;
- case 146: goto st146;
- case 147: goto st147;
- case 148: goto st148;
- case 149: goto st149;
- case 150: goto st150;
- case 151: goto st151;
- case 152: goto st152;
- case 153: goto st153;
- case 154: goto st154;
- case 155: goto st155;
- case 156: goto st156;
- case 157: goto st157;
- case 158: goto st158;
- case 159: goto st159;
- case 160: goto st160;
- case 161: goto st161;
- case 162: goto st162;
- case 163: goto st163;
- case 164: goto st164;
- case 165: goto st165;
- case 166: goto st166;
- case 167: goto st167;
- case 168: goto st168;
- case 169: goto st169;
- case 170: goto st170;
- case 171: goto st171;
- case 172: goto st172;
- case 173: goto st173;
- case 174: goto st174;
- case 175: goto st175;
- case 176: goto st176;
- case 177: goto st177;
- case 178: goto st178;
- case 179: goto st179;
- case 180: goto st180;
- case 181: goto st181;
- case 182: goto st182;
- case 183: goto st183;
- case 184: goto st184;
- case 185: goto st185;
- case 186: goto st186;
- case 187: goto st187;
- case 188: goto st188;
- case 189: goto st189;
- case 190: goto st190;
- case 191: goto st191;
- case 291: goto st291;
- case 192: goto st192;
- case 292: goto st292;
- case 193: goto st193;
- case 194: goto st194;
- case 195: goto st195;
- case 196: goto st196;
- case 197: goto st197;
- case 198: goto st198;
- case 293: goto st293;
- case 199: goto st199;
- case 294: goto st294;
- case 200: goto st200;
- case 201: goto st201;
- case 202: goto st202;
- case 295: goto st295;
- case 296: goto st296;
- case 203: goto st203;
- case 204: goto st204;
- case 205: goto st205;
- case 206: goto st206;
- case 207: goto st207;
- case 297: goto st297;
- case 298: goto st298;
- case 208: goto st208;
- case 209: goto st209;
- case 210: goto st210;
- case 211: goto st211;
- case 212: goto st212;
- case 213: goto st213;
- case 214: goto st214;
- case 215: goto st215;
- case 299: goto st299;
- case 300: goto st300;
- case 216: goto st216;
- case 217: goto st217;
- case 218: goto st218;
- case 219: goto st219;
- case 220: goto st220;
- case 221: goto st221;
- case 222: goto st222;
- case 223: goto st223;
- case 224: goto st224;
- case 225: goto st225;
- case 226: goto st226;
- case 227: goto st227;
- case 228: goto st228;
- case 229: goto st229;
- case 230: goto st230;
- case 231: goto st231;
- case 232: goto st232;
- case 233: goto st233;
- case 234: goto st234;
- case 235: goto st235;
- case 236: goto st236;
- case 237: goto st237;
- case 238: goto st238;
- case 239: goto st239;
- case 240: goto st240;
- case 241: goto st241;
- case 301: goto st301;
- case 302: goto st302;
- case 242: goto st242;
- case 303: goto st303;
- case 304: goto st304;
- case 243: goto st243;
- case 305: goto st305;
- case 306: goto st306;
- case 244: goto st244;
- default: break;
- }
-
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof;
+ if ( sm->cs == 0 )
+ goto _out;
_resume:
- switch ( sm->cs )
- {
-tr0:
+ switch ( _dtext_from_state_actions[ sm->cs] ) {
+ case 58:
#line 1 "NONE"
- { switch( ( sm->act) ) {
- case 79:
- {{( sm->p) = ((( sm->te)))-1;}
- g_debug("block newline2");
-
- if (sm->header_mode) {
- sm->header_mode = false;
- dstack_rewind(sm);
- } else if (sm->list_mode) {
- dstack_close_list(sm);
- } else {
- dstack_close_before_block(sm);
- }
- }
+ {( sm->ts) = ( sm->p);}
break;
- case 80:
- {{( sm->p) = ((( sm->te)))-1;}
- g_debug("block newline");
- }
- break;
+#line 559 "ext/dtext/dtext.c"
}
- }
- goto st245;
-tr2:
-#line 951 "ext/dtext/dtext.rl"
- {{( sm->p) = ((( sm->te)))-1;}{
- g_debug("block char: %c", (*( sm->p)));
- ( sm->p)--;
- if (g_queue_is_empty(sm->dstack) || dstack_check(sm, BLOCK_QUOTE) || dstack_check(sm, BLOCK_SPOILER) || dstack_check(sm, BLOCK_EXPAND)) {
- g_debug(" push p");
- g_debug(" print <p>");
- dstack_push(sm, &BLOCK_P);
- append_block(sm, "<p>");
- }
-
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st260;}}
- }}
- goto st245;
-tr14:
-#line 858 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("block [/spoiler]");
- dstack_close_before_block(sm);
- if (dstack_check(sm, BLOCK_SPOILER)) {
- g_debug(" rewind");
- dstack_rewind(sm);
- }
- }}
- goto st245;
-tr53:
-#line 905 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_close_before_block(sm);
- dstack_push(sm, &BLOCK_TABLE);
- append_block(sm, "<table class=\"striped\">");
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st299;}}
- }}
- goto st245;
-tr54:
-#line 912 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &BLOCK_TN);
- append_block(sm, "<p class=\"tn\">");
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st260;}}
- }}
- goto st245;
-tr292:
-#line 951 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("block char: %c", (*( sm->p)));
- ( sm->p)--;
-
- if (g_queue_is_empty(sm->dstack) || dstack_check(sm, BLOCK_QUOTE) || dstack_check(sm, BLOCK_SPOILER) || dstack_check(sm, BLOCK_EXPAND)) {
- g_debug(" push p");
- g_debug(" print <p>");
- dstack_push(sm, &BLOCK_P);
- append_block(sm, "<p>");
- }
-
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st260;}}
- }}
- goto st245;
-tr293:
-#line 928 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("block 0");
- g_debug(" close dstack");
- dstack_close(sm);
- }}
- goto st245;
-tr300:
-#line 951 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("block char: %c", (*( sm->p)));
- ( sm->p)--;
-
- if (g_queue_is_empty(sm->dstack) || dstack_check(sm, BLOCK_QUOTE) || dstack_check(sm, BLOCK_SPOILER) || dstack_check(sm, BLOCK_EXPAND)) {
- g_debug(" push p");
- g_debug(" print <p>");
- dstack_push(sm, &BLOCK_P);
- append_block(sm, "<p>");
- }
-
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st260;}}
- }}
- goto st245;
-tr301:
-#line 108 "ext/dtext/dtext.rl"
- {
- sm->b2 = sm->p;
-}
-#line 918 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("block list");
- g_debug(" call list");
- sm->list_nest = 0;
- sm->list_mode = true;
- append_closing_p_if(sm);
- {( sm->p) = (( sm->ts))-1;}
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st301;}}
- }}
- goto st245;
-tr310:
-#line 867 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("block [code]");
- dstack_close_before_block(sm);
- dstack_push(sm, &BLOCK_CODE);
- append_block(sm, "<pre>");
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st295;}}
- }}
- goto st245;
-tr311:
-#line 884 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("block [expand=]");
- dstack_close_before_block(sm);
- dstack_push(sm, &BLOCK_EXPAND);
- append_block(sm, "<div class=\"expandable\"><div class=\"expandable-header\">");
- append(sm, true, "<span>");
- append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
- append(sm, true, "</span>");
- append_block(sm, "<input type=\"button\" value=\"Show\" class=\"expandable-button\"/></div>");
- append_block(sm, "<div class=\"expandable-content\">");
- }}
- goto st245;
-tr313:
-#line 875 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("block [expand]");
- dstack_close_before_block(sm);
- dstack_push(sm, &BLOCK_EXPAND);
- append_block(sm, "<div class=\"expandable\"><div class=\"expandable-header\">");
- append_block(sm, "<input type=\"button\" value=\"Show\" class=\"expandable-button\"/></div>");
- append_block(sm, "<div class=\"expandable-content\">");
- }}
- goto st245;
-tr314:
-#line 896 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("block [nodtext]");
- dstack_close_before_block(sm);
- dstack_push(sm, &BLOCK_NODTEXT);
- dstack_push(sm, &BLOCK_P);
- append_block(sm, "<p>");
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st297;}}
- }}
- goto st245;
-tr315:
-#line 840 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("block [quote]");
- g_debug(" push quote");
- g_debug(" print <blockquote>");
- dstack_close_before_block(sm);
- dstack_push(sm, &BLOCK_QUOTE);
- append_block(sm, "<blockquote>");
- }}
- goto st245;
-tr316:
-#line 849 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("block [spoiler]");
- g_debug(" push spoiler");
- g_debug(" print <div>");
- dstack_close_before_block(sm);
- dstack_push(sm, &BLOCK_SPOILER);
- append_block(sm, "<div class=\"spoiler\">");
- }}
- goto st245;
-tr318:
-#line 795 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- char header = *sm->a1;
-
- if (sm->f_inline) {
- header = '6';
- }
-
- if (!sm->f_strip) {
- switch (header) {
- case '1':
- dstack_push(sm, &BLOCK_H1);
- append_block(sm, "<h1>");
- break;
-
- case '2':
- dstack_push(sm, &BLOCK_H2);
- append_block(sm, "<h2>");
- break;
-
- case '3':
- dstack_push(sm, &BLOCK_H3);
- append_block(sm, "<h3>");
- break;
-
- case '4':
- dstack_push(sm, &BLOCK_H4);
- append_block(sm, "<h4>");
- break;
-
- case '5':
- dstack_push(sm, &BLOCK_H5);
- append_block(sm, "<h5>");
- break;
-
- case '6':
- dstack_push(sm, &BLOCK_H6);
- append_block(sm, "<h6>");
- break;
- }
- }
-
- sm->header_mode = true;
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 245; goto st260;}}
- }}
- goto st245;
-st245:
-#line 1 "NONE"
- {( sm->ts) = 0;}
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof245;
-case 245:
-#line 1 "NONE"
- {( sm->ts) = ( sm->p);}
-#line 1127 "ext/dtext/dtext.c"
+ switch ( sm->cs ) {
+case 256:
switch( (*( sm->p)) ) {
- case 0: goto tr293;
- case 10: goto tr294;
- case 13: goto st247;
- case 42: goto tr296;
- case 91: goto tr297;
- case 104: goto tr298;
+ case 0: goto tr304;
+ case 10: goto tr305;
+ case 13: goto tr306;
+ case 42: goto tr307;
+ case 91: goto tr308;
+ case 104: goto tr309;
}
- goto tr292;
-tr1:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 934 "ext/dtext/dtext.rl"
- {( sm->act) = 79;}
- goto st246;
-tr294:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 947 "ext/dtext/dtext.rl"
- {( sm->act) = 80;}
- goto st246;
-st246:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof246;
-case 246:
-#line 1153 "ext/dtext/dtext.c"
+ goto tr303;
+case 257:
switch( (*( sm->p)) ) {
case 10: goto tr1;
- case 13: goto st0;
+ case 13: goto tr310;
}
goto tr0;
-st0:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof0;
-case 0:
+case 1:
if ( (*( sm->p)) == 10 )
goto tr1;
goto tr0;
-st247:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof247;
-case 247:
+case 258:
if ( (*( sm->p)) == 10 )
- goto tr294;
- goto tr300;
-tr296:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st248;
-st248:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof248;
-case 248:
-#line 1185 "ext/dtext/dtext.c"
+ goto tr305;
+ goto tr311;
+case 259:
switch( (*( sm->p)) ) {
case 9: goto tr5;
case 32: goto tr5;
- case 42: goto st2;
+ case 42: goto tr6;
}
- goto tr300;
-tr5:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st1;
-st1:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof1;
-case 1:
-#line 1202 "ext/dtext/dtext.c"
+ goto tr311;
+case 2:
switch( (*( sm->p)) ) {
case 0: goto tr2;
case 9: goto tr4;
case 10: goto tr2;
case 13: goto tr2;
case 32: goto tr4;
}
goto tr3;
-tr3:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st249;
-st249:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof249;
-case 249:
-#line 1221 "ext/dtext/dtext.c"
+case 260:
switch( (*( sm->p)) ) {
- case 0: goto tr301;
- case 10: goto tr301;
- case 13: goto tr301;
+ case 0: goto tr312;
+ case 10: goto tr312;
+ case 13: goto tr312;
}
- goto st249;
-tr4:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st250;
-st250:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof250;
-case 250:
-#line 1238 "ext/dtext/dtext.c"
+ goto tr313;
+case 261:
switch( (*( sm->p)) ) {
- case 0: goto tr301;
+ case 0: goto tr312;
case 9: goto tr4;
- case 10: goto tr301;
- case 13: goto tr301;
+ case 10: goto tr312;
+ case 13: goto tr312;
case 32: goto tr4;
}
goto tr3;
-st2:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof2;
-case 2:
+case 3:
switch( (*( sm->p)) ) {
case 9: goto tr5;
case 32: goto tr5;
- case 42: goto st2;
+ case 42: goto tr6;
}
goto tr2;
-tr297:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st251;
-st251:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof251;
-case 251:
-#line 1265 "ext/dtext/dtext.c"
+case 262:
switch( (*( sm->p)) ) {
- case 47: goto st3;
- case 99: goto st11;
- case 101: goto st15;
- case 110: goto st23;
- case 113: goto st30;
- case 115: goto st35;
- case 116: goto st42;
+ case 47: goto tr314;
+ case 99: goto tr315;
+ case 101: goto tr316;
+ case 110: goto tr317;
+ case 113: goto tr318;
+ case 115: goto tr319;
+ case 116: goto tr320;
}
- goto tr300;
-st3:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof3;
-case 3:
+ goto tr311;
+case 4:
if ( (*( sm->p)) == 115 )
- goto st4;
+ goto tr7;
goto tr2;
-st4:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof4;
-case 4:
+case 5:
if ( (*( sm->p)) == 112 )
- goto st5;
+ goto tr8;
goto tr2;
-st5:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof5;
-case 5:
+case 6:
if ( (*( sm->p)) == 111 )
- goto st6;
+ goto tr9;
goto tr2;
-st6:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof6;
-case 6:
+case 7:
if ( (*( sm->p)) == 105 )
- goto st7;
+ goto tr10;
goto tr2;
-st7:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof7;
-case 7:
+case 8:
if ( (*( sm->p)) == 108 )
- goto st8;
+ goto tr11;
goto tr2;
-st8:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof8;
-case 8:
+case 9:
if ( (*( sm->p)) == 101 )
- goto st9;
+ goto tr12;
goto tr2;
-st9:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof9;
-case 9:
+case 10:
if ( (*( sm->p)) == 114 )
- goto st10;
+ goto tr13;
goto tr2;
-st10:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof10;
-case 10:
+case 11:
if ( (*( sm->p)) == 93 )
goto tr14;
goto tr2;
-st11:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof11;
-case 11:
+case 12:
if ( (*( sm->p)) == 111 )
- goto st12;
+ goto tr15;
goto tr2;
-st12:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof12;
-case 12:
+case 13:
if ( (*( sm->p)) == 100 )
- goto st13;
+ goto tr16;
goto tr2;
-st13:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof13;
-case 13:
+case 14:
if ( (*( sm->p)) == 101 )
- goto st14;
+ goto tr17;
goto tr2;
-st14:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof14;
-case 14:
+case 15:
if ( (*( sm->p)) == 93 )
- goto st252;
+ goto tr18;
goto tr2;
-st252:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof252;
-case 252:
+case 263:
if ( (*( sm->p)) == 32 )
- goto st252;
+ goto tr18;
if ( 9 <= (*( sm->p)) && (*( sm->p)) <= 13 )
- goto st252;
- goto tr310;
-st15:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof15;
-case 15:
+ goto tr18;
+ goto tr321;
+case 16:
if ( (*( sm->p)) == 120 )
- goto st16;
+ goto tr19;
goto tr2;
-st16:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof16;
-case 16:
+case 17:
if ( (*( sm->p)) == 112 )
- goto st17;
+ goto tr20;
goto tr2;
-st17:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof17;
-case 17:
+case 18:
if ( (*( sm->p)) == 97 )
- goto st18;
+ goto tr21;
goto tr2;
-st18:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof18;
-case 18:
+case 19:
if ( (*( sm->p)) == 110 )
- goto st19;
+ goto tr22;
goto tr2;
-st19:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof19;
-case 19:
+case 20:
if ( (*( sm->p)) == 100 )
- goto st20;
+ goto tr23;
goto tr2;
-st20:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof20;
-case 20:
+case 21:
switch( (*( sm->p)) ) {
- case 61: goto st21;
- case 93: goto st254;
+ case 61: goto tr24;
+ case 93: goto tr25;
}
goto tr2;
-st21:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof21;
-case 21:
+case 22:
if ( (*( sm->p)) == 93 )
goto tr2;
goto tr26;
-tr26:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st22;
-st22:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof22;
-case 22:
-#line 1430 "ext/dtext/dtext.c"
+case 23:
if ( (*( sm->p)) == 93 )
goto tr28;
- goto st22;
-tr28:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st253;
-st253:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof253;
-case 253:
-#line 1444 "ext/dtext/dtext.c"
+ goto tr27;
+case 264:
if ( (*( sm->p)) == 32 )
- goto st253;
+ goto tr323;
if ( 9 <= (*( sm->p)) && (*( sm->p)) <= 13 )
- goto st253;
- goto tr311;
-st254:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof254;
-case 254:
+ goto tr323;
+ goto tr322;
+case 265:
if ( (*( sm->p)) == 32 )
- goto st254;
+ goto tr25;
if ( 9 <= (*( sm->p)) && (*( sm->p)) <= 13 )
- goto st254;
- goto tr313;
-st23:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof23;
-case 23:
+ goto tr25;
+ goto tr324;
+case 24:
if ( (*( sm->p)) == 111 )
- goto st24;
+ goto tr29;
goto tr2;
-st24:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof24;
-case 24:
+case 25:
if ( (*( sm->p)) == 100 )
- goto st25;
+ goto tr30;
goto tr2;
-st25:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof25;
-case 25:
+case 26:
if ( (*( sm->p)) == 116 )
- goto st26;
+ goto tr31;
goto tr2;
-st26:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof26;
-case 26:
+case 27:
if ( (*( sm->p)) == 101 )
- goto st27;
+ goto tr32;
goto tr2;
-st27:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof27;
-case 27:
+case 28:
if ( (*( sm->p)) == 120 )
- goto st28;
+ goto tr33;
goto tr2;
-st28:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof28;
-case 28:
+case 29:
if ( (*( sm->p)) == 116 )
- goto st29;
+ goto tr34;
goto tr2;
-st29:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof29;
-case 29:
+case 30:
if ( (*( sm->p)) == 93 )
- goto st255;
+ goto tr35;
goto tr2;
-st255:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof255;
-case 255:
+case 266:
if ( (*( sm->p)) == 32 )
- goto st255;
+ goto tr35;
if ( 9 <= (*( sm->p)) && (*( sm->p)) <= 13 )
- goto st255;
- goto tr314;
-st30:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof30;
-case 30:
+ goto tr35;
+ goto tr325;
+case 31:
if ( (*( sm->p)) == 117 )
- goto st31;
+ goto tr36;
goto tr2;
-st31:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof31;
-case 31:
+case 32:
if ( (*( sm->p)) == 111 )
- goto st32;
+ goto tr37;
goto tr2;
-st32:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof32;
-case 32:
+case 33:
if ( (*( sm->p)) == 116 )
- goto st33;
+ goto tr38;
goto tr2;
-st33:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof33;
-case 33:
+case 34:
if ( (*( sm->p)) == 101 )
- goto st34;
+ goto tr39;
goto tr2;
-st34:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof34;
-case 34:
+case 35:
if ( (*( sm->p)) == 93 )
- goto st256;
+ goto tr40;
goto tr2;
-st256:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof256;
-case 256:
+case 267:
if ( (*( sm->p)) == 32 )
- goto st256;
+ goto tr40;
if ( 9 <= (*( sm->p)) && (*( sm->p)) <= 13 )
- goto st256;
- goto tr315;
-st35:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof35;
-case 35:
+ goto tr40;
+ goto tr326;
+case 36:
if ( (*( sm->p)) == 112 )
- goto st36;
+ goto tr41;
goto tr2;
-st36:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof36;
-case 36:
+case 37:
if ( (*( sm->p)) == 111 )
- goto st37;
+ goto tr42;
goto tr2;
-st37:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof37;
-case 37:
+case 38:
if ( (*( sm->p)) == 105 )
- goto st38;
+ goto tr43;
goto tr2;
-st38:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof38;
-case 38:
+case 39:
if ( (*( sm->p)) == 108 )
- goto st39;
+ goto tr44;
goto tr2;
-st39:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof39;
-case 39:
+case 40:
if ( (*( sm->p)) == 101 )
- goto st40;
+ goto tr45;
goto tr2;
-st40:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof40;
-case 40:
+case 41:
if ( (*( sm->p)) == 114 )
- goto st41;
+ goto tr46;
goto tr2;
-st41:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof41;
-case 41:
+case 42:
if ( (*( sm->p)) == 93 )
- goto st257;
+ goto tr47;
goto tr2;
-st257:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof257;
-case 257:
+case 268:
if ( (*( sm->p)) == 32 )
- goto st257;
+ goto tr47;
if ( 9 <= (*( sm->p)) && (*( sm->p)) <= 13 )
- goto st257;
- goto tr316;
-st42:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof42;
-case 42:
+ goto tr47;
+ goto tr327;
+case 43:
switch( (*( sm->p)) ) {
- case 97: goto st43;
- case 110: goto st47;
+ case 97: goto tr48;
+ case 110: goto tr49;
}
goto tr2;
-st43:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof43;
-case 43:
+case 44:
if ( (*( sm->p)) == 98 )
- goto st44;
+ goto tr50;
goto tr2;
-st44:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof44;
-case 44:
+case 45:
if ( (*( sm->p)) == 108 )
- goto st45;
+ goto tr51;
goto tr2;
-st45:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof45;
-case 45:
+case 46:
if ( (*( sm->p)) == 101 )
- goto st46;
+ goto tr52;
goto tr2;
-st46:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof46;
-case 46:
+case 47:
if ( (*( sm->p)) == 93 )
goto tr53;
goto tr2;
-st47:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof47;
-case 47:
+case 48:
if ( (*( sm->p)) == 93 )
goto tr54;
goto tr2;
-tr298:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st258;
-st258:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof258;
-case 258:
-#line 1671 "ext/dtext/dtext.c"
+case 269:
if ( 49 <= (*( sm->p)) && (*( sm->p)) <= 54 )
- goto tr317;
- goto tr300;
-tr317:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st48;
-st48:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof48;
-case 48:
-#line 1685 "ext/dtext/dtext.c"
+ goto tr328;
+ goto tr311;
+case 49:
if ( (*( sm->p)) == 46 )
goto tr55;
goto tr2;
-tr55:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st259;
-st259:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof259;
-case 259:
-#line 1699 "ext/dtext/dtext.c"
+case 270:
switch( (*( sm->p)) ) {
- case 9: goto st259;
- case 32: goto st259;
+ case 9: goto tr330;
+ case 32: goto tr330;
}
- goto tr318;
-tr56:
-#line 1 "NONE"
- { switch( ( sm->act) ) {
- case 18:
- {{( sm->p) = ((( sm->te)))-1;}
- append_segment_html_escaped(sm, sm->ts, sm->te - 1);
- }
- break;
- case 19:
- {{( sm->p) = ((( sm->te)))-1;}
- if (is_boundary_c((*( sm->p)))) {
- sm->b = true;
- sm->d = 2;
- } else {
- sm->b = false;
- sm->d = 1;
- }
-
- append(sm, true, "<a rel=\"nofollow\" href=\"/users?name=");
- append_segment_uri_escaped(sm, sm->a1, sm->a2 - sm->d);
- append(sm, true, "\">");
- append_c(sm, '@');
- append_segment_html_escaped(sm, sm->a1, sm->a2 - sm->d);
- append(sm, true, "</a>");
-
- if (sm->b) {
- append_c_html_escaped(sm, (*( sm->p)));
- }
- }
- break;
- case 42:
- {{( sm->p) = ((( sm->te)))-1;}
- g_debug("inline newline2");
- g_debug(" return");
-
- if (sm->list_mode) {
- dstack_close_list(sm);
- }
-
- {( sm->p) = (( sm->ts))-1;}
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- }
- break;
- case 43:
- {{( sm->p) = ((( sm->te)))-1;}
- g_debug("inline newline");
-
- if (sm->header_mode) {
- sm->header_mode = false;
- dstack_rewind(sm);
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append(sm, true, "<br>");
- }
- }
- break;
+ goto tr329;
+case 271:
+ if ( (*( sm->p)) == 34 )
+ goto tr331;
+ goto tr57;
+case 0:
+ goto _out;
+case 50:
+ if ( (*( sm->p)) == 58 )
+ goto tr56;
+ goto tr57;
+case 51:
+ switch( (*( sm->p)) ) {
+ case 47: goto tr58;
+ case 104: goto tr59;
}
+ goto tr57;
+case 52:
+ if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
+ goto tr60;
+ goto tr57;
+case 272:
+ if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
+ goto tr60;
+ goto tr332;
+case 53:
+ if ( (*( sm->p)) == 116 )
+ goto tr61;
+ goto tr57;
+case 54:
+ if ( (*( sm->p)) == 116 )
+ goto tr62;
+ goto tr57;
+case 55:
+ if ( (*( sm->p)) == 112 )
+ goto tr63;
+ goto tr57;
+case 56:
+ switch( (*( sm->p)) ) {
+ case 58: goto tr64;
+ case 115: goto tr65;
}
- goto st260;
-tr58:
-#line 600 "ext/dtext/dtext.rl"
- {{( sm->p) = ((( sm->te)))-1;}{
- g_debug("inline newline");
-
- if (sm->header_mode) {
- sm->header_mode = false;
- dstack_rewind(sm);
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append(sm, true, "<br>");
- }
- }}
- goto st260;
-tr63:
-#line 616 "ext/dtext/dtext.rl"
- {{( sm->p) = ((( sm->te)))-1;}{
- g_debug("inline char: %c", (*( sm->p)));
- append_c_html_escaped(sm, (*( sm->p)));
- }}
- goto st260;
-tr74:
-#line 108 "ext/dtext/dtext.rl"
- {
- sm->b2 = sm->p;
-}
-#line 329 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- append(sm, true, "<a href=\"");
- append_segment_html_escaped(sm, sm->b1, sm->b2 - 1);
- append(sm, true, "\">");
- append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr122:
-#line 237 "ext/dtext/dtext.rl"
- {{( sm->p) = ((( sm->te)))-1;}{
- append(sm, true, "<a href=\"http://www.pixiv.net/member_illust.php?mode=medium&illust_id=");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "pixiv #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr141:
-#line 170 "ext/dtext/dtext.rl"
- {{( sm->p) = ((( sm->te)))-1;}{
- append(sm, true, "<a href=\"/forum_topics/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "topic #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr156:
-#line 407 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- if (dstack_check(sm, INLINE_B)) {
- dstack_pop(sm);
- append(sm, true, "</strong>");
- } else {
- append(sm, true, "[/b]");
- }
- }}
- goto st260;
-tr162:
-#line 543 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_close_before_block(sm);
-
- if (dstack_check(sm, BLOCK_EXPAND)) {
- append_block(sm, "</div></div>");
- dstack_pop(sm);
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append_block(sm, "[/expand]");
- }
- }}
- goto st260;
-tr163:
-#line 421 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- if (dstack_check(sm, INLINE_I)) {
- dstack_pop(sm);
- append(sm, true, "</em>");
- } else {
- append(sm, true, "[/i]");
- }
- }}
- goto st260;
-tr169:
-#line 435 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- if (dstack_check(sm, INLINE_S)) {
- dstack_pop(sm);
- append(sm, true, "</s>");
- } else {
- append(sm, true, "[/s]");
- }
- }}
- goto st260;
-tr176:
-#line 515 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("inline [/spoiler]");
- dstack_close_before_block(sm);
-
- if (dstack_check(sm, INLINE_SPOILER)) {
- g_debug(" pop dstack");
- g_debug(" print </span>");
- dstack_pop(sm);
- append(sm, true, "</span>");
- } else if (dstack_check(sm, BLOCK_SPOILER)) {
- g_debug(" pop dstack");
- g_debug(" print </div>");
- g_debug(" return");
- dstack_pop(sm);
- append_block(sm, "</div>");
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append_block(sm, "[/spoiler]");
- }
- }}
- goto st260;
-tr180:
-#line 570 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- if (dstack_check(sm, BLOCK_TD)) {
- dstack_pop(sm);
- append_block(sm, "</td>");
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append_block(sm, "[/td]");
- }
- }}
- goto st260;
-tr181:
-#line 560 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- if (dstack_check(sm, BLOCK_TH)) {
- dstack_pop(sm);
- append_block(sm, "</th>");
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append_block(sm, "[/th]");
- }
- }}
- goto st260;
-tr182:
-#line 463 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_close_before_block(sm);
-
- if (dstack_check(sm, BLOCK_TN)) {
- dstack_pop(sm);
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else if (dstack_check(sm, INLINE_TN)) {
- dstack_pop(sm);
- append(sm, true, "</span>");
- } else {
- append_block(sm, "[/tn]");
- }
- }}
- goto st260;
-tr183:
-#line 449 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- if (dstack_check(sm, INLINE_U)) {
- dstack_pop(sm);
- append(sm, true, "</u>");
- } else {
- append(sm, true, "[/u]");
- }
- }}
- goto st260;
-tr188:
-#line 267 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- GString * segment = g_string_new_len(sm->a1, sm->a2 - sm->a1);
- GString * lowercase_segment = NULL;
- underscore_string(segment->str, segment->len);
-
- if (g_utf8_validate(segment->str, -1, NULL)) {
- lowercase_segment = g_string_new(g_utf8_strdown(segment->str, -1));
- } else {
- lowercase_segment = g_string_new(g_ascii_strdown(segment->str, -1));
- }
-
- append(sm, true, "<a href=\"/wiki_pages/show_or_new?title=");
- append_segment_uri_escaped(sm, lowercase_segment->str, lowercase_segment->str + lowercase_segment->len - 1);
- append(sm, true, "\">");
- append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
-
- g_string_free(lowercase_segment, TRUE);
- g_string_free(segment, TRUE);
- }}
- goto st260;
-tr192:
-#line 288 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- GString * segment = g_string_new_len(sm->a1, sm->a2 - sm->a1);
- GString * lowercase_segment = NULL;
- underscore_string(segment->str, segment->len);
-
- if (g_utf8_validate(segment->str, -1, NULL)) {
- lowercase_segment = g_string_new(g_utf8_strdown(segment->str, -1));
- } else {
- lowercase_segment = g_string_new(g_ascii_strdown(segment->str, -1));
- }
-
- append(sm, true, "<a href=\"/wiki_pages/show_or_new?title=");
- append_segment_uri_escaped(sm, lowercase_segment->str, lowercase_segment->str + lowercase_segment->len - 1);
- append(sm, true, "\">");
- append_segment_html_escaped(sm, sm->b1, sm->b2 - 1);
- append(sm, true, "</a>");
-
- g_string_free(lowercase_segment, TRUE);
- g_string_free(segment, TRUE);
- }}
- goto st260;
-tr193:
-#line 402 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &INLINE_B);
- append(sm, true, "<strong>");
- }}
- goto st260;
-tr199:
-#line 536 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("inline [expand]");
- dstack_rewind(sm);
- {( sm->p) = (((sm->p - 7)))-1;}
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- }}
- goto st260;
-tr200:
-#line 416 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &INLINE_I);
- append(sm, true, "<em>");
- }}
- goto st260;
-tr207:
-#line 555 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &INLINE_NODTEXT);
- {
- size_t len = sm->stack->len;
-
- if (len > MAX_STACK_DEPTH) {
- free_machine(sm);
- rb_raise(rb_eSyntaxError, "too many nested elements");
- }
-
- if (sm->top >= len) {
- sm->stack = g_array_set_size(sm->stack, len + 16);
- }
-{( ((int *)sm->stack->data))[( sm->top)++] = 260; goto st297;}}
- }}
- goto st260;
-tr212:
-#line 485 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("inline [quote]");
- dstack_close_before_block(sm);
- {( sm->p) = (( sm->ts))-1;}
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- }}
- goto st260;
-tr213:
-#line 430 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &INLINE_S);
- append(sm, true, "<s>");
- }}
- goto st260;
-tr220:
-#line 508 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("inline [spoiler]");
- g_debug(" push <span>");
- dstack_push(sm, &INLINE_SPOILER);
- append(sm, true, "<span class=\"spoiler\">");
- }}
- goto st260;
-tr222:
-#line 458 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &INLINE_TN);
- append(sm, true, "<span class=\"tn\">");
- }}
- goto st260;
-tr223:
-#line 444 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &INLINE_U);
- append(sm, true, "<u>");
- }}
- goto st260;
-tr235:
-#line 259 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- append(sm, true, "<a rel=\"nofollow\" href=\"/posts?tags=");
- append_segment_uri_escaped(sm, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr320:
-#line 616 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("inline char: %c", (*( sm->p)));
- append_c_html_escaped(sm, (*( sm->p)));
- }}
- goto st260;
-tr321:
-#line 580 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- g_debug("inline 0");
- g_debug(" return");
-
- ( sm->p)--;
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- }}
- goto st260;
-tr336:
-#line 600 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("inline newline");
-
- if (sm->header_mode) {
- sm->header_mode = false;
- dstack_rewind(sm);
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append(sm, true, "<br>");
- }
- }}
- goto st260;
-tr339:
-#line 588 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("inline newline2");
- g_debug(" return");
-
- if (sm->list_mode) {
- dstack_close_list(sm);
- }
-
- {( sm->p) = (( sm->ts))-1;}
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- }}
- goto st260;
-tr340:
- sm->cs = 260;
-#line 108 "ext/dtext/dtext.rl"
- {
- sm->b2 = sm->p;
-}
-#line 383 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("inline list");
-
- if (dstack_check(sm, BLOCK_LI)) {
- g_debug(" rewind li");
- dstack_rewind(sm);
- } else if (dstack_check(sm, BLOCK_P)) {
- g_debug(" rewind p");
- dstack_rewind(sm);
- } else if (sm->header_mode) {
- g_debug(" rewind header");
- dstack_rewind(sm);
- }
-
- g_debug(" next list");
- {( sm->p) = (( sm->ts + 1))-1;}
- sm->cs = 301;
- }}
- goto _again;
-tr342:
-#line 612 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append_c(sm, ' ');
- }}
- goto st260;
-tr343:
-#line 616 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("inline char: %c", (*( sm->p)));
- append_c_html_escaped(sm, (*( sm->p)));
- }}
- goto st260;
-tr345:
-#line 108 "ext/dtext/dtext.rl"
- {
- sm->b2 = sm->p;
-}
-#line 309 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- if (is_boundary_c((*( sm->p)))) {
- sm->d = 2;
- sm->b = true;
- } else {
- sm->d = 1;
- sm->b = false;
- }
-
- append(sm, true, "<a href=\"");
- append_segment_html_escaped(sm, sm->b1, sm->b2 - sm->d);
- append(sm, true, "\">");
- append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
-
- if (sm->b) {
- append_c_html_escaped(sm, (*( sm->p)));
- }
- }}
- goto st260;
-tr347:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 362 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- if (is_boundary_c((*( sm->p)))) {
- sm->b = true;
- sm->d = 2;
- } else {
- sm->b = false;
- sm->d = 1;
- }
-
- append(sm, true, "<a rel=\"nofollow\" href=\"/users?name=");
- append_segment_uri_escaped(sm, sm->a1, sm->a2 - sm->d);
- append(sm, true, "\">");
- append_c(sm, '@');
- append_segment_html_escaped(sm, sm->a1, sm->a2 - sm->d);
- append(sm, true, "</a>");
-
- if (sm->b) {
- append_c_html_escaped(sm, (*( sm->p)));
- }
- }}
- goto st260;
-tr350:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 1 "NONE"
- { switch( ( sm->act) ) {
- case 18:
- {{( sm->p) = ((( sm->te)))-1;}
- append_segment_html_escaped(sm, sm->ts, sm->te - 1);
- }
- break;
- case 19:
- {{( sm->p) = ((( sm->te)))-1;}
- if (is_boundary_c((*( sm->p)))) {
- sm->b = true;
- sm->d = 2;
- } else {
- sm->b = false;
- sm->d = 1;
- }
-
- append(sm, true, "<a rel=\"nofollow\" href=\"/users?name=");
- append_segment_uri_escaped(sm, sm->a1, sm->a2 - sm->d);
- append(sm, true, "\">");
- append_c(sm, '@');
- append_segment_html_escaped(sm, sm->a1, sm->a2 - sm->d);
- append(sm, true, "</a>");
-
- if (sm->b) {
- append_c_html_escaped(sm, (*( sm->p)));
- }
- }
- break;
- case 42:
- {{( sm->p) = ((( sm->te)))-1;}
- g_debug("inline newline2");
- g_debug(" return");
-
- if (sm->list_mode) {
- dstack_close_list(sm);
- }
-
- {( sm->p) = (( sm->ts))-1;}
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- }
- break;
- case 43:
- {{( sm->p) = ((( sm->te)))-1;}
- g_debug("inline newline");
-
- if (sm->header_mode) {
- sm->header_mode = false;
- dstack_rewind(sm);
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append(sm, true, "<br>");
- }
- }
- break;
- }
- }
- goto st260;
-tr352:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 219 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"/artists/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "artist #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr355:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 192 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"/comments/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "comment #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr358:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 161 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"/forum_posts/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "forum #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr361:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 228 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"https://github.com/r888888888/danbooru/issues/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "issue #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr365:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 237 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"http://www.pixiv.net/member_illust.php?mode=medium&illust_id=");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "pixiv #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr368:
-#line 108 "ext/dtext/dtext.rl"
- {
- sm->b2 = sm->p;
-}
-#line 246 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"http://www.pixiv.net/member_illust.php?mode=manga_big&illust_id=");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "&page=");
- append_segment(sm, true, sm->b1, sm->b2 - 1);
- append(sm, true, "\">");
- append(sm, false, "pixiv #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, false, "/p");
- append_segment(sm, false, sm->b1, sm->b2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr370:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 201 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"/pools/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "pool #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr372:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 152 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"/posts/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "post #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr375:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 170 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"/forum_topics/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "topic #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr378:
-#line 108 "ext/dtext/dtext.rl"
- {
- sm->b2 = sm->p;
-}
-#line 179 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"/forum_topics/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "?page=");
- append_segment(sm, true, sm->b1, sm->b2 - 1);
- append(sm, true, "\">");
- append(sm, false, "topic #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, false, "/p");
- append_segment(sm, false, sm->b1, sm->b2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr381:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
-#line 210 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- append(sm, true, "<a href=\"/users/");
- append_segment(sm, true, sm->a1, sm->a2 - 1);
- append(sm, true, "\">");
- append(sm, false, "user #");
- append_segment(sm, false, sm->a1, sm->a2 - 1);
- append(sm, true, "</a>");
- }}
- goto st260;
-tr393:
-#line 492 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- g_debug("inline [/quote]");
- dstack_close_before_block(sm);
-
- if (dstack_check(sm, BLOCK_LI)) {
- dstack_close_list(sm);
- }
-
- if (dstack_check(sm, BLOCK_QUOTE)) {
- dstack_rewind(sm);
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- } else {
- append_block(sm, "[/quote]");
- }
- }}
- goto st260;
-tr396:
-#line 479 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- dstack_rewind(sm);
- {( sm->p) = (( sm->a1 - 1))-1;}
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- }}
- goto st260;
-tr398:
-#line 337 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;{
- if (is_boundary_c((*( sm->p)))) {
- sm->b = true;
- sm->d = 2;
- } else {
- sm->b = false;
- sm->d = 1;
- }
-
- append(sm, true, "<a href=\"");
- append_segment_html_escaped(sm, sm->ts, sm->te - sm->d);
- append(sm, true, "\">");
- append_segment_html_escaped(sm, sm->ts, sm->te - sm->d);
- append(sm, true, "</a>");
-
- if (sm->b) {
- append_c_html_escaped(sm, (*( sm->p)));
- }
- }}
- goto st260;
-st260:
-#line 1 "NONE"
- {( sm->ts) = 0;}
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof260;
-case 260:
-#line 1 "NONE"
- {( sm->ts) = ( sm->p);}
-#line 2507 "ext/dtext/dtext.c"
+ goto tr57;
+case 57:
+ if ( (*( sm->p)) == 47 )
+ goto tr66;
+ goto tr57;
+case 58:
+ if ( (*( sm->p)) == 47 )
+ goto tr58;
+ goto tr57;
+case 59:
+ if ( (*( sm->p)) == 58 )
+ goto tr64;
+ goto tr57;
+case 273:
+ if ( (*( sm->p)) == 34 )
+ goto tr334;
+ goto tr333;
+case 274:
switch( (*( sm->p)) ) {
- case 0: goto tr321;
- case 10: goto tr322;
- case 13: goto st265;
- case 34: goto tr324;
- case 64: goto st268;
- case 65: goto tr326;
- case 67: goto tr327;
- case 70: goto tr328;
- case 73: goto tr329;
- case 80: goto tr330;
- case 84: goto tr331;
- case 85: goto tr332;
- case 91: goto tr333;
- case 97: goto tr326;
- case 99: goto tr327;
- case 102: goto tr328;
- case 104: goto tr334;
- case 105: goto tr329;
- case 112: goto tr330;
- case 116: goto tr331;
- case 117: goto tr332;
- case 123: goto tr335;
+ case 0: goto tr336;
+ case 10: goto tr337;
+ case 13: goto tr338;
+ case 34: goto tr339;
+ case 64: goto tr340;
+ case 65: goto tr341;
+ case 67: goto tr342;
+ case 70: goto tr343;
+ case 73: goto tr344;
+ case 80: goto tr345;
+ case 84: goto tr346;
+ case 85: goto tr347;
+ case 91: goto tr348;
+ case 97: goto tr341;
+ case 99: goto tr342;
+ case 102: goto tr343;
+ case 104: goto tr349;
+ case 105: goto tr344;
+ case 112: goto tr345;
+ case 116: goto tr346;
+ case 117: goto tr347;
+ case 123: goto tr350;
}
- goto tr320;
-tr322:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 600 "ext/dtext/dtext.rl"
- {( sm->act) = 43;}
- goto st261;
-st261:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof261;
-case 261:
-#line 2543 "ext/dtext/dtext.c"
+ goto tr335;
+case 275:
switch( (*( sm->p)) ) {
- case 10: goto tr57;
- case 13: goto st49;
- case 42: goto tr338;
+ case 10: goto tr68;
+ case 13: goto tr352;
+ case 42: goto tr353;
}
- goto tr336;
-tr57:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 588 "ext/dtext/dtext.rl"
- {( sm->act) = 42;}
- goto st262;
-st262:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof262;
-case 262:
-#line 2560 "ext/dtext/dtext.c"
+ goto tr351;
+case 276:
switch( (*( sm->p)) ) {
- case 10: goto tr57;
- case 13: goto st49;
+ case 10: goto tr68;
+ case 13: goto tr352;
}
- goto tr339;
-st49:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof49;
-case 49:
+ goto tr354;
+case 60:
if ( (*( sm->p)) == 10 )
- goto tr57;
- goto tr56;
-tr338:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st50;
-st50:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof50;
-case 50:
-#line 2583 "ext/dtext/dtext.c"
+ goto tr68;
+ goto tr67;
+case 61:
switch( (*( sm->p)) ) {
- case 9: goto tr59;
- case 32: goto tr59;
- case 42: goto st50;
+ case 9: goto tr70;
+ case 32: goto tr70;
+ case 42: goto tr71;
}
- goto tr58;
-tr59:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st51;
-st51:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof51;
-case 51:
-#line 2600 "ext/dtext/dtext.c"
+ goto tr69;
+case 62:
switch( (*( sm->p)) ) {
- case 0: goto tr58;
- case 9: goto tr62;
- case 10: goto tr58;
- case 13: goto tr58;
- case 32: goto tr62;
+ case 0: goto tr69;
+ case 9: goto tr73;
+ case 10: goto tr69;
+ case 13: goto tr69;
+ case 32: goto tr73;
}
- goto tr61;
-tr61:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st263;
-st263:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof263;
-case 263:
-#line 2619 "ext/dtext/dtext.c"
+ goto tr72;
+case 277:
switch( (*( sm->p)) ) {
- case 0: goto tr340;
- case 10: goto tr340;
- case 13: goto tr340;
+ case 0: goto tr355;
+ case 10: goto tr355;
+ case 13: goto tr355;
}
- goto st263;
-tr62:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st264;
-st264:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof264;
-case 264:
-#line 2636 "ext/dtext/dtext.c"
+ goto tr356;
+case 278:
switch( (*( sm->p)) ) {
- case 0: goto tr340;
- case 9: goto tr62;
- case 10: goto tr340;
- case 13: goto tr340;
- case 32: goto tr62;
+ case 0: goto tr355;
+ case 9: goto tr73;
+ case 10: goto tr355;
+ case 13: goto tr355;
+ case 32: goto tr73;
}
- goto tr61;
-st265:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof265;
-case 265:
+ goto tr72;
+case 279:
if ( (*( sm->p)) == 10 )
- goto tr322;
- goto tr342;
-tr324:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st266;
-st266:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof266;
-case 266:
-#line 2660 "ext/dtext/dtext.c"
+ goto tr337;
+ goto tr357;
+case 280:
if ( (*( sm->p)) == 34 )
- goto tr343;
- goto tr344;
-tr344:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st52;
-st52:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof52;
-case 52:
-#line 2674 "ext/dtext/dtext.c"
+ goto tr358;
+ goto tr359;
+case 63:
if ( (*( sm->p)) == 34 )
- goto tr65;
- goto st52;
-tr65:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st53;
-st53:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof53;
-case 53:
-#line 2688 "ext/dtext/dtext.c"
+ goto tr76;
+ goto tr75;
+case 64:
if ( (*( sm->p)) == 58 )
- goto st54;
- goto tr63;
-st54:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof54;
-case 54:
+ goto tr77;
+ goto tr74;
+case 65:
switch( (*( sm->p)) ) {
- case 47: goto tr67;
- case 91: goto st56;
- case 104: goto tr69;
+ case 47: goto tr78;
+ case 91: goto tr79;
+ case 104: goto tr80;
}
- goto tr63;
-tr67:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st55;
-st55:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof55;
-case 55:
-#line 2712 "ext/dtext/dtext.c"
+ goto tr74;
+case 66:
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto st267;
- goto tr63;
-st267:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof267;
-case 267:
+ goto tr81;
+ goto tr74;
+case 281:
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto st267;
- goto tr345;
-st56:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof56;
-case 56:
+ goto tr81;
+ goto tr360;
+case 67:
switch( (*( sm->p)) ) {
- case 47: goto tr71;
- case 104: goto tr72;
+ case 47: goto tr82;
+ case 104: goto tr83;
}
- goto tr63;
-tr71:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st57;
-st57:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof57;
-case 57:
-#line 2742 "ext/dtext/dtext.c"
+ goto tr74;
+case 68:
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto st58;
- goto tr63;
-st58:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof58;
-case 58:
+ goto tr84;
+ goto tr74;
+case 69:
if ( (*( sm->p)) == 93 )
- goto tr74;
+ goto tr85;
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto st58;
- goto tr63;
-tr72:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st59;
-st59:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof59;
-case 59:
-#line 2765 "ext/dtext/dtext.c"
+ goto tr84;
+ goto tr74;
+case 70:
if ( (*( sm->p)) == 116 )
- goto st60;
- goto tr63;
-st60:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof60;
-case 60:
+ goto tr86;
+ goto tr74;
+case 71:
if ( (*( sm->p)) == 116 )
- goto st61;
- goto tr63;
-st61:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof61;
-case 61:
+ goto tr87;
+ goto tr74;
+case 72:
if ( (*( sm->p)) == 112 )
- goto st62;
- goto tr63;
-st62:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof62;
-case 62:
+ goto tr88;
+ goto tr74;
+case 73:
switch( (*( sm->p)) ) {
- case 58: goto st63;
- case 115: goto st65;
+ case 58: goto tr89;
+ case 115: goto tr90;
}
- goto tr63;
-st63:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof63;
-case 63:
+ goto tr74;
+case 74:
if ( (*( sm->p)) == 47 )
- goto st64;
- goto tr63;
-st64:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof64;
-case 64:
+ goto tr91;
+ goto tr74;
+case 75:
if ( (*( sm->p)) == 47 )
- goto st57;
- goto tr63;
-st65:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof65;
-case 65:
+ goto tr92;
+ goto tr74;
+case 76:
if ( (*( sm->p)) == 58 )
- goto st63;
- goto tr63;
-tr69:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st66;
-st66:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof66;
-case 66:
-#line 2823 "ext/dtext/dtext.c"
+ goto tr89;
+ goto tr74;
+case 77:
if ( (*( sm->p)) == 116 )
- goto st67;
- goto tr63;
-st67:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof67;
-case 67:
+ goto tr93;
+ goto tr74;
+case 78:
if ( (*( sm->p)) == 116 )
- goto st68;
- goto tr63;
-st68:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof68;
-case 68:
+ goto tr94;
+ goto tr74;
+case 79:
if ( (*( sm->p)) == 112 )
- goto st69;
- goto tr63;
-st69:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof69;
-case 69:
+ goto tr95;
+ goto tr74;
+case 80:
switch( (*( sm->p)) ) {
- case 58: goto st70;
- case 115: goto st72;
+ case 58: goto tr96;
+ case 115: goto tr97;
}
- goto tr63;
-st70:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof70;
-case 70:
+ goto tr74;
+case 81:
if ( (*( sm->p)) == 47 )
- goto st71;
- goto tr63;
-st71:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof71;
-case 71:
+ goto tr98;
+ goto tr74;
+case 82:
if ( (*( sm->p)) == 47 )
- goto st55;
- goto tr63;
-st72:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof72;
-case 72:
+ goto tr99;
+ goto tr74;
+case 83:
if ( (*( sm->p)) == 58 )
- goto st70;
- goto tr63;
-st268:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof268;
-case 268:
+ goto tr96;
+ goto tr74;
+case 282:
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto tr346;
- goto tr343;
-tr346:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st269;
-st269:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof269;
-case 269:
-#line 2888 "ext/dtext/dtext.c"
+ goto tr361;
+ goto tr358;
+case 283:
if ( (*( sm->p)) == 64 )
- goto tr349;
+ goto tr364;
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto tr348;
- goto tr347;
-tr348:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 362 "ext/dtext/dtext.rl"
- {( sm->act) = 19;}
- goto st270;
-tr349:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 358 "ext/dtext/dtext.rl"
- {( sm->act) = 18;}
- goto st270;
-st270:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof270;
-case 270:
-#line 2910 "ext/dtext/dtext.c"
+ goto tr363;
+ goto tr362;
+case 284:
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto tr348;
- goto tr350;
-tr326:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st271;
-st271:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof271;
-case 271:
-#line 2922 "ext/dtext/dtext.c"
+ goto tr363;
+ goto tr365;
+case 285:
switch( (*( sm->p)) ) {
- case 82: goto st73;
- case 114: goto st73;
+ case 82: goto tr366;
+ case 114: goto tr366;
}
- goto tr343;
-st73:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof73;
-case 73:
+ goto tr358;
+case 84:
switch( (*( sm->p)) ) {
- case 84: goto st74;
- case 116: goto st74;
+ case 84: goto tr100;
+ case 116: goto tr100;
}
- goto tr63;
-st74:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof74;
-case 74:
+ goto tr74;
+case 85:
switch( (*( sm->p)) ) {
- case 73: goto st75;
- case 105: goto st75;
+ case 73: goto tr101;
+ case 105: goto tr101;
}
- goto tr63;
-st75:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof75;
-case 75:
+ goto tr74;
+case 86:
switch( (*( sm->p)) ) {
- case 83: goto st76;
- case 115: goto st76;
+ case 83: goto tr102;
+ case 115: goto tr102;
}
- goto tr63;
-st76:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof76;
-case 76:
+ goto tr74;
+case 87:
switch( (*( sm->p)) ) {
- case 84: goto st77;
- case 116: goto st77;
+ case 84: goto tr103;
+ case 116: goto tr103;
}
- goto tr63;
-st77:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof77;
-case 77:
+ goto tr74;
+case 88:
if ( (*( sm->p)) == 32 )
- goto st78;
- goto tr63;
-st78:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof78;
-case 78:
+ goto tr104;
+ goto tr74;
+case 89:
if ( (*( sm->p)) == 35 )
- goto st79;
- goto tr63;
-st79:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof79;
-case 79:
+ goto tr105;
+ goto tr74;
+case 90:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr95;
- goto tr63;
-tr95:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st272;
-st272:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof272;
-case 272:
-#line 2995 "ext/dtext/dtext.c"
+ goto tr106;
+ goto tr74;
+case 286:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st272;
- goto tr352;
-tr327:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st273;
-st273:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof273;
-case 273:
-#line 3007 "ext/dtext/dtext.c"
+ goto tr368;
+ goto tr367;
+case 287:
switch( (*( sm->p)) ) {
- case 79: goto st80;
- case 111: goto st80;
+ case 79: goto tr369;
+ case 111: goto tr369;
}
- goto tr343;
-st80:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof80;
-case 80:
+ goto tr358;
+case 91:
switch( (*( sm->p)) ) {
- case 77: goto st81;
- case 109: goto st81;
+ case 77: goto tr107;
+ case 109: goto tr107;
}
- goto tr63;
-st81:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof81;
-case 81:
+ goto tr74;
+case 92:
switch( (*( sm->p)) ) {
- case 77: goto st82;
- case 109: goto st82;
+ case 77: goto tr108;
+ case 109: goto tr108;
}
- goto tr63;
-st82:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof82;
-case 82:
+ goto tr74;
+case 93:
switch( (*( sm->p)) ) {
- case 69: goto st83;
- case 101: goto st83;
+ case 69: goto tr109;
+ case 101: goto tr109;
}
- goto tr63;
-st83:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof83;
-case 83:
+ goto tr74;
+case 94:
switch( (*( sm->p)) ) {
- case 78: goto st84;
- case 110: goto st84;
+ case 78: goto tr110;
+ case 110: goto tr110;
}
- goto tr63;
-st84:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof84;
-case 84:
+ goto tr74;
+case 95:
switch( (*( sm->p)) ) {
- case 84: goto st85;
- case 116: goto st85;
+ case 84: goto tr111;
+ case 116: goto tr111;
}
- goto tr63;
-st85:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof85;
-case 85:
+ goto tr74;
+case 96:
if ( (*( sm->p)) == 32 )
- goto st86;
- goto tr63;
-st86:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof86;
-case 86:
+ goto tr112;
+ goto tr74;
+case 97:
if ( (*( sm->p)) == 35 )
- goto st87;
- goto tr63;
-st87:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof87;
-case 87:
+ goto tr113;
+ goto tr74;
+case 98:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr103;
- goto tr63;
-tr103:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st274;
-st274:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof274;
-case 274:
-#line 3089 "ext/dtext/dtext.c"
+ goto tr114;
+ goto tr74;
+case 288:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st274;
- goto tr355;
-tr328:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st275;
-st275:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof275;
-case 275:
-#line 3101 "ext/dtext/dtext.c"
+ goto tr371;
+ goto tr370;
+case 289:
switch( (*( sm->p)) ) {
- case 79: goto st88;
- case 111: goto st88;
+ case 79: goto tr372;
+ case 111: goto tr372;
}
- goto tr343;
-st88:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof88;
-case 88:
+ goto tr358;
+case 99:
switch( (*( sm->p)) ) {
- case 82: goto st89;
- case 114: goto st89;
+ case 82: goto tr115;
+ case 114: goto tr115;
}
- goto tr63;
-st89:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof89;
-case 89:
+ goto tr74;
+case 100:
switch( (*( sm->p)) ) {
- case 85: goto st90;
- case 117: goto st90;
+ case 85: goto tr116;
+ case 117: goto tr116;
}
- goto tr63;
-st90:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof90;
-case 90:
+ goto tr74;
+case 101:
switch( (*( sm->p)) ) {
- case 77: goto st91;
- case 109: goto st91;
+ case 77: goto tr117;
+ case 109: goto tr117;
}
- goto tr63;
-st91:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof91;
-case 91:
+ goto tr74;
+case 102:
if ( (*( sm->p)) == 32 )
- goto st92;
- goto tr63;
-st92:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof92;
-case 92:
+ goto tr118;
+ goto tr74;
+case 103:
if ( (*( sm->p)) == 35 )
- goto st93;
- goto tr63;
-st93:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof93;
-case 93:
+ goto tr119;
+ goto tr74;
+case 104:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr109;
- goto tr63;
-tr109:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st276;
-st276:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof276;
-case 276:
-#line 3165 "ext/dtext/dtext.c"
+ goto tr120;
+ goto tr74;
+case 290:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st276;
- goto tr358;
-tr329:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st277;
-st277:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof277;
-case 277:
-#line 3177 "ext/dtext/dtext.c"
+ goto tr374;
+ goto tr373;
+case 291:
switch( (*( sm->p)) ) {
- case 83: goto st94;
- case 115: goto st94;
+ case 83: goto tr375;
+ case 115: goto tr375;
}
- goto tr343;
-st94:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof94;
-case 94:
+ goto tr358;
+case 105:
switch( (*( sm->p)) ) {
- case 83: goto st95;
- case 115: goto st95;
+ case 83: goto tr121;
+ case 115: goto tr121;
}
- goto tr63;
-st95:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof95;
-case 95:
+ goto tr74;
+case 106:
switch( (*( sm->p)) ) {
- case 85: goto st96;
- case 117: goto st96;
+ case 85: goto tr122;
+ case 117: goto tr122;
}
- goto tr63;
-st96:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof96;
-case 96:
+ goto tr74;
+case 107:
switch( (*( sm->p)) ) {
- case 69: goto st97;
- case 101: goto st97;
+ case 69: goto tr123;
+ case 101: goto tr123;
}
- goto tr63;
-st97:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof97;
-case 97:
+ goto tr74;
+case 108:
if ( (*( sm->p)) == 32 )
- goto st98;
- goto tr63;
-st98:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof98;
-case 98:
+ goto tr124;
+ goto tr74;
+case 109:
if ( (*( sm->p)) == 35 )
- goto st99;
- goto tr63;
-st99:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof99;
-case 99:
+ goto tr125;
+ goto tr74;
+case 110:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr115;
- goto tr63;
-tr115:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st278;
-st278:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof278;
-case 278:
-#line 3241 "ext/dtext/dtext.c"
+ goto tr126;
+ goto tr74;
+case 292:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st278;
- goto tr361;
-tr330:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st279;
-st279:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof279;
-case 279:
-#line 3253 "ext/dtext/dtext.c"
+ goto tr377;
+ goto tr376;
+case 293:
switch( (*( sm->p)) ) {
- case 73: goto st100;
- case 79: goto st108;
- case 105: goto st100;
- case 111: goto st108;
+ case 73: goto tr378;
+ case 79: goto tr379;
+ case 105: goto tr378;
+ case 111: goto tr379;
}
- goto tr343;
-st100:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof100;
-case 100:
+ goto tr358;
+case 111:
switch( (*( sm->p)) ) {
- case 88: goto st101;
- case 120: goto st101;
+ case 88: goto tr127;
+ case 120: goto tr127;
}
- goto tr63;
-st101:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof101;
-case 101:
+ goto tr74;
+case 112:
switch( (*( sm->p)) ) {
- case 73: goto st102;
- case 105: goto st102;
+ case 73: goto tr128;
+ case 105: goto tr128;
}
- goto tr63;
-st102:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof102;
-case 102:
+ goto tr74;
+case 113:
switch( (*( sm->p)) ) {
- case 86: goto st103;
- case 118: goto st103;
+ case 86: goto tr129;
+ case 118: goto tr129;
}
- goto tr63;
-st103:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof103;
-case 103:
+ goto tr74;
+case 114:
if ( (*( sm->p)) == 32 )
- goto st104;
- goto tr63;
-st104:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof104;
-case 104:
+ goto tr130;
+ goto tr74;
+case 115:
if ( (*( sm->p)) == 35 )
- goto st105;
- goto tr63;
-st105:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof105;
-case 105:
+ goto tr131;
+ goto tr74;
+case 116:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr121;
- goto tr63;
-tr121:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st280;
-tr367:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st280;
-st280:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof280;
-case 280:
-#line 3325 "ext/dtext/dtext.c"
+ goto tr132;
+ goto tr74;
+case 294:
if ( (*( sm->p)) == 47 )
- goto tr366;
+ goto tr381;
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr367;
- goto tr365;
-tr366:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st106;
-st106:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof106;
-case 106:
-#line 3341 "ext/dtext/dtext.c"
+ goto tr382;
+ goto tr380;
+case 117:
if ( (*( sm->p)) == 112 )
- goto st107;
- goto tr122;
-st107:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof107;
-case 107:
+ goto tr134;
+ goto tr133;
+case 118:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr124;
- goto tr122;
-tr124:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st281;
-st281:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof281;
-case 281:
-#line 3362 "ext/dtext/dtext.c"
+ goto tr135;
+ goto tr133;
+case 295:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st281;
- goto tr368;
-st108:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof108;
-case 108:
+ goto tr384;
+ goto tr383;
+case 119:
switch( (*( sm->p)) ) {
- case 79: goto st109;
- case 83: goto st113;
- case 111: goto st109;
- case 115: goto st113;
+ case 79: goto tr136;
+ case 83: goto tr137;
+ case 111: goto tr136;
+ case 115: goto tr137;
}
- goto tr63;
-st109:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof109;
-case 109:
+ goto tr74;
+case 120:
switch( (*( sm->p)) ) {
- case 76: goto st110;
- case 108: goto st110;
+ case 76: goto tr138;
+ case 108: goto tr138;
}
- goto tr63;
-st110:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof110;
-case 110:
+ goto tr74;
+case 121:
if ( (*( sm->p)) == 32 )
- goto st111;
- goto tr63;
-st111:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof111;
-case 111:
+ goto tr139;
+ goto tr74;
+case 122:
if ( (*( sm->p)) == 35 )
- goto st112;
- goto tr63;
-st112:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof112;
-case 112:
+ goto tr140;
+ goto tr74;
+case 123:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr130;
- goto tr63;
-tr130:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st282;
-st282:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof282;
-case 282:
-#line 3417 "ext/dtext/dtext.c"
+ goto tr141;
+ goto tr74;
+case 296:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st282;
- goto tr370;
-st113:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof113;
-case 113:
+ goto tr386;
+ goto tr385;
+case 124:
switch( (*( sm->p)) ) {
- case 84: goto st114;
- case 116: goto st114;
+ case 84: goto tr142;
+ case 116: goto tr142;
}
- goto tr63;
-st114:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof114;
-case 114:
+ goto tr74;
+case 125:
if ( (*( sm->p)) == 32 )
- goto st115;
- goto tr63;
-st115:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof115;
-case 115:
+ goto tr143;
+ goto tr74;
+case 126:
if ( (*( sm->p)) == 35 )
- goto st116;
- goto tr63;
-st116:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof116;
-case 116:
+ goto tr144;
+ goto tr74;
+case 127:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr134;
- goto tr63;
-tr134:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st283;
-st283:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof283;
-case 283:
-#line 3461 "ext/dtext/dtext.c"
+ goto tr145;
+ goto tr74;
+case 297:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st283;
- goto tr372;
-tr331:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st284;
-st284:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof284;
-case 284:
-#line 3473 "ext/dtext/dtext.c"
+ goto tr388;
+ goto tr387;
+case 298:
switch( (*( sm->p)) ) {
- case 79: goto st117;
- case 111: goto st117;
+ case 79: goto tr389;
+ case 111: goto tr389;
}
- goto tr343;
-st117:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof117;
-case 117:
+ goto tr358;
+case 128:
switch( (*( sm->p)) ) {
- case 80: goto st118;
- case 112: goto st118;
+ case 80: goto tr146;
+ case 112: goto tr146;
}
- goto tr63;
-st118:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof118;
-case 118:
+ goto tr74;
+case 129:
switch( (*( sm->p)) ) {
- case 73: goto st119;
- case 105: goto st119;
+ case 73: goto tr147;
+ case 105: goto tr147;
}
- goto tr63;
-st119:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof119;
-case 119:
+ goto tr74;
+case 130:
switch( (*( sm->p)) ) {
- case 67: goto st120;
- case 99: goto st120;
+ case 67: goto tr148;
+ case 99: goto tr148;
}
- goto tr63;
-st120:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof120;
-case 120:
+ goto tr74;
+case 131:
if ( (*( sm->p)) == 32 )
- goto st121;
- goto tr63;
-st121:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof121;
-case 121:
+ goto tr149;
+ goto tr74;
+case 132:
if ( (*( sm->p)) == 35 )
- goto st122;
- goto tr63;
-st122:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof122;
-case 122:
+ goto tr150;
+ goto tr74;
+case 133:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr140;
- goto tr63;
-tr140:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st285;
-tr377:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st285;
-st285:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof285;
-case 285:
-#line 3543 "ext/dtext/dtext.c"
+ goto tr151;
+ goto tr74;
+case 299:
if ( (*( sm->p)) == 47 )
- goto tr376;
+ goto tr391;
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr377;
- goto tr375;
-tr376:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st123;
-st123:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof123;
-case 123:
-#line 3559 "ext/dtext/dtext.c"
+ goto tr392;
+ goto tr390;
+case 134:
if ( (*( sm->p)) == 112 )
- goto st124;
- goto tr141;
-st124:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof124;
-case 124:
+ goto tr153;
+ goto tr152;
+case 135:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr143;
- goto tr141;
-tr143:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st286;
-st286:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof286;
-case 286:
-#line 3580 "ext/dtext/dtext.c"
+ goto tr154;
+ goto tr152;
+case 300:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st286;
- goto tr378;
-tr332:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st287;
-st287:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof287;
-case 287:
-#line 3592 "ext/dtext/dtext.c"
+ goto tr394;
+ goto tr393;
+case 301:
switch( (*( sm->p)) ) {
- case 83: goto st125;
- case 115: goto st125;
+ case 83: goto tr395;
+ case 115: goto tr395;
}
- goto tr343;
-st125:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof125;
-case 125:
+ goto tr358;
+case 136:
switch( (*( sm->p)) ) {
- case 69: goto st126;
- case 101: goto st126;
+ case 69: goto tr155;
+ case 101: goto tr155;
}
- goto tr63;
-st126:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof126;
-case 126:
+ goto tr74;
+case 137:
switch( (*( sm->p)) ) {
- case 82: goto st127;
- case 114: goto st127;
+ case 82: goto tr156;
+ case 114: goto tr156;
}
- goto tr63;
-st127:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof127;
-case 127:
+ goto tr74;
+case 138:
if ( (*( sm->p)) == 32 )
- goto st128;
- goto tr63;
-st128:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof128;
-case 128:
+ goto tr157;
+ goto tr74;
+case 139:
if ( (*( sm->p)) == 35 )
- goto st129;
- goto tr63;
-st129:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof129;
-case 129:
+ goto tr158;
+ goto tr74;
+case 140:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto tr148;
- goto tr63;
-tr148:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st288;
-st288:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof288;
-case 288:
-#line 3647 "ext/dtext/dtext.c"
+ goto tr159;
+ goto tr74;
+case 302:
if ( 48 <= (*( sm->p)) && (*( sm->p)) <= 57 )
- goto st288;
- goto tr381;
-tr333:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st289;
-st289:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof289;
-case 289:
-#line 3659 "ext/dtext/dtext.c"
+ goto tr397;
+ goto tr396;
+case 303:
switch( (*( sm->p)) ) {
- case 47: goto st130;
- case 91: goto st156;
- case 98: goto st162;
- case 101: goto st163;
- case 105: goto st169;
- case 110: goto st170;
- case 113: goto st177;
- case 115: goto st182;
- case 116: goto st189;
- case 117: goto st191;
+ case 47: goto tr398;
+ case 91: goto tr399;
+ case 98: goto tr400;
+ case 101: goto tr401;
+ case 105: goto tr402;
+ case 110: goto tr403;
+ case 113: goto tr404;
+ case 115: goto tr405;
+ case 116: goto tr406;
+ case 117: goto tr407;
}
- goto tr343;
-st130:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof130;
-case 130:
+ goto tr358;
+case 141:
switch( (*( sm->p)) ) {
- case 98: goto st131;
- case 101: goto st132;
- case 105: goto st138;
- case 113: goto st139;
- case 115: goto st144;
- case 116: goto st151;
- case 117: goto st155;
+ case 98: goto tr160;
+ case 101: goto tr161;
+ case 105: goto tr162;
+ case 113: goto tr163;
+ case 115: goto tr164;
+ case 116: goto tr165;
+ case 117: goto tr166;
}
- goto tr63;
-st131:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof131;
-case 131:
+ goto tr74;
+case 142:
if ( (*( sm->p)) == 93 )
- goto tr156;
- goto tr63;
-st132:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof132;
-case 132:
+ goto tr167;
+ goto tr74;
+case 143:
if ( (*( sm->p)) == 120 )
- goto st133;
- goto tr63;
-st133:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof133;
-case 133:
+ goto tr168;
+ goto tr74;
+case 144:
if ( (*( sm->p)) == 112 )
- goto st134;
- goto tr63;
-st134:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof134;
-case 134:
+ goto tr169;
+ goto tr74;
+case 145:
if ( (*( sm->p)) == 97 )
- goto st135;
- goto tr63;
-st135:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof135;
-case 135:
+ goto tr170;
+ goto tr74;
+case 146:
if ( (*( sm->p)) == 110 )
- goto st136;
- goto tr63;
-st136:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof136;
-case 136:
+ goto tr171;
+ goto tr74;
+case 147:
if ( (*( sm->p)) == 100 )
- goto st137;
- goto tr63;
-st137:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof137;
-case 137:
+ goto tr172;
+ goto tr74;
+case 148:
if ( (*( sm->p)) == 93 )
- goto tr162;
- goto tr63;
-st138:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof138;
-case 138:
+ goto tr173;
+ goto tr74;
+case 149:
if ( (*( sm->p)) == 93 )
- goto tr163;
- goto tr63;
-st139:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof139;
-case 139:
+ goto tr174;
+ goto tr74;
+case 150:
if ( (*( sm->p)) == 117 )
- goto st140;
- goto tr63;
-st140:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof140;
-case 140:
+ goto tr175;
+ goto tr74;
+case 151:
if ( (*( sm->p)) == 111 )
- goto st141;
- goto tr63;
-st141:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof141;
-case 141:
+ goto tr176;
+ goto tr74;
+case 152:
if ( (*( sm->p)) == 116 )
- goto st142;
- goto tr63;
-st142:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof142;
-case 142:
+ goto tr177;
+ goto tr74;
+case 153:
if ( (*( sm->p)) == 101 )
- goto st143;
- goto tr63;
-st143:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof143;
-case 143:
+ goto tr178;
+ goto tr74;
+case 154:
if ( (*( sm->p)) == 93 )
- goto st290;
- goto tr63;
-st290:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof290;
-case 290:
+ goto tr179;
+ goto tr74;
+case 304:
if ( (*( sm->p)) == 32 )
- goto st290;
+ goto tr179;
if ( 9 <= (*( sm->p)) && (*( sm->p)) <= 13 )
- goto st290;
- goto tr393;
-st144:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof144;
-case 144:
+ goto tr179;
+ goto tr408;
+case 155:
switch( (*( sm->p)) ) {
- case 93: goto tr169;
- case 112: goto st145;
+ case 93: goto tr180;
+ case 112: goto tr181;
}
- goto tr63;
-st145:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof145;
-case 145:
+ goto tr74;
+case 156:
if ( (*( sm->p)) == 111 )
- goto st146;
- goto tr63;
-st146:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof146;
-case 146:
+ goto tr182;
+ goto tr74;
+case 157:
if ( (*( sm->p)) == 105 )
- goto st147;
- goto tr63;
-st147:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof147;
-case 147:
+ goto tr183;
+ goto tr74;
+case 158:
if ( (*( sm->p)) == 108 )
- goto st148;
- goto tr63;
-st148:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof148;
-case 148:
+ goto tr184;
+ goto tr74;
+case 159:
if ( (*( sm->p)) == 101 )
- goto st149;
- goto tr63;
-st149:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof149;
-case 149:
+ goto tr185;
+ goto tr74;
+case 160:
if ( (*( sm->p)) == 114 )
- goto st150;
- goto tr63;
-st150:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof150;
-case 150:
+ goto tr186;
+ goto tr74;
+case 161:
if ( (*( sm->p)) == 93 )
- goto tr176;
- goto tr63;
-st151:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof151;
-case 151:
+ goto tr187;
+ goto tr74;
+case 162:
switch( (*( sm->p)) ) {
- case 100: goto st152;
- case 104: goto st153;
- case 110: goto st154;
+ case 100: goto tr188;
+ case 104: goto tr189;
+ case 110: goto tr190;
}
- goto tr63;
-st152:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof152;
-case 152:
+ goto tr74;
+case 163:
if ( (*( sm->p)) == 93 )
- goto tr180;
- goto tr63;
-st153:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof153;
-case 153:
+ goto tr191;
+ goto tr74;
+case 164:
if ( (*( sm->p)) == 93 )
- goto tr181;
- goto tr63;
-st154:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof154;
-case 154:
+ goto tr192;
+ goto tr74;
+case 165:
if ( (*( sm->p)) == 93 )
- goto tr182;
- goto tr63;
-st155:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof155;
-case 155:
+ goto tr193;
+ goto tr74;
+case 166:
if ( (*( sm->p)) == 93 )
- goto tr183;
- goto tr63;
-st156:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof156;
-case 156:
+ goto tr194;
+ goto tr74;
+case 167:
switch( (*( sm->p)) ) {
- case 93: goto tr63;
- case 124: goto tr63;
+ case 93: goto tr74;
+ case 124: goto tr74;
}
- goto tr184;
-tr184:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st157;
-st157:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof157;
-case 157:
-#line 3895 "ext/dtext/dtext.c"
+ goto tr195;
+case 168:
switch( (*( sm->p)) ) {
- case 93: goto tr186;
- case 124: goto tr187;
+ case 93: goto tr197;
+ case 124: goto tr198;
}
- goto st157;
-tr186:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st158;
-st158:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof158;
-case 158:
-#line 3911 "ext/dtext/dtext.c"
+ goto tr196;
+case 169:
if ( (*( sm->p)) == 93 )
- goto tr188;
- goto tr63;
-tr187:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st159;
-st159:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof159;
-case 159:
-#line 3925 "ext/dtext/dtext.c"
+ goto tr199;
+ goto tr74;
+case 170:
if ( (*( sm->p)) == 93 )
- goto tr63;
- goto tr189;
-tr189:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st160;
-st160:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof160;
-case 160:
-#line 3939 "ext/dtext/dtext.c"
+ goto tr74;
+ goto tr200;
+case 171:
if ( (*( sm->p)) == 93 )
- goto tr191;
- goto st160;
-tr191:
-#line 108 "ext/dtext/dtext.rl"
- {
- sm->b2 = sm->p;
-}
- goto st161;
-st161:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof161;
-case 161:
-#line 3953 "ext/dtext/dtext.c"
+ goto tr202;
+ goto tr201;
+case 172:
if ( (*( sm->p)) == 93 )
- goto tr192;
- goto tr63;
-st162:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof162;
-case 162:
+ goto tr203;
+ goto tr74;
+case 173:
if ( (*( sm->p)) == 93 )
- goto tr193;
- goto tr63;
-st163:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof163;
-case 163:
+ goto tr204;
+ goto tr74;
+case 174:
if ( (*( sm->p)) == 120 )
- goto st164;
- goto tr63;
-st164:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof164;
-case 164:
+ goto tr205;
+ goto tr74;
+case 175:
if ( (*( sm->p)) == 112 )
- goto st165;
- goto tr63;
-st165:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof165;
-case 165:
+ goto tr206;
+ goto tr74;
+case 176:
if ( (*( sm->p)) == 97 )
- goto st166;
- goto tr63;
-st166:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof166;
-case 166:
+ goto tr207;
+ goto tr74;
+case 177:
if ( (*( sm->p)) == 110 )
- goto st167;
- goto tr63;
-st167:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof167;
-case 167:
+ goto tr208;
+ goto tr74;
+case 178:
if ( (*( sm->p)) == 100 )
- goto st168;
- goto tr63;
-st168:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof168;
-case 168:
+ goto tr209;
+ goto tr74;
+case 179:
if ( (*( sm->p)) == 93 )
- goto tr199;
- goto tr63;
-st169:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof169;
-case 169:
+ goto tr210;
+ goto tr74;
+case 180:
if ( (*( sm->p)) == 93 )
- goto tr200;
- goto tr63;
-st170:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof170;
-case 170:
+ goto tr211;
+ goto tr74;
+case 181:
if ( (*( sm->p)) == 111 )
- goto st171;
- goto tr63;
-st171:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof171;
-case 171:
+ goto tr212;
+ goto tr74;
+case 182:
if ( (*( sm->p)) == 100 )
- goto st172;
- goto tr63;
-st172:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof172;
-case 172:
+ goto tr213;
+ goto tr74;
+case 183:
if ( (*( sm->p)) == 116 )
- goto st173;
- goto tr63;
-st173:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof173;
-case 173:
+ goto tr214;
+ goto tr74;
+case 184:
if ( (*( sm->p)) == 101 )
- goto st174;
- goto tr63;
-st174:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof174;
-case 174:
+ goto tr215;
+ goto tr74;
+case 185:
if ( (*( sm->p)) == 120 )
- goto st175;
- goto tr63;
-st175:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof175;
-case 175:
+ goto tr216;
+ goto tr74;
+case 186:
if ( (*( sm->p)) == 116 )
- goto st176;
- goto tr63;
-st176:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof176;
-case 176:
+ goto tr217;
+ goto tr74;
+case 187:
if ( (*( sm->p)) == 93 )
- goto tr207;
- goto tr63;
-st177:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof177;
-case 177:
+ goto tr218;
+ goto tr74;
+case 188:
if ( (*( sm->p)) == 117 )
- goto st178;
- goto tr63;
-st178:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof178;
-case 178:
+ goto tr219;
+ goto tr74;
+case 189:
if ( (*( sm->p)) == 111 )
- goto st179;
- goto tr63;
-st179:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof179;
-case 179:
+ goto tr220;
+ goto tr74;
+case 190:
if ( (*( sm->p)) == 116 )
- goto st180;
- goto tr63;
-st180:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof180;
-case 180:
+ goto tr221;
+ goto tr74;
+case 191:
if ( (*( sm->p)) == 101 )
- goto st181;
- goto tr63;
-st181:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof181;
-case 181:
+ goto tr222;
+ goto tr74;
+case 192:
if ( (*( sm->p)) == 93 )
- goto tr212;
- goto tr63;
-st182:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof182;
-case 182:
+ goto tr223;
+ goto tr74;
+case 193:
switch( (*( sm->p)) ) {
- case 93: goto tr213;
- case 112: goto st183;
+ case 93: goto tr224;
+ case 112: goto tr225;
}
- goto tr63;
-st183:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof183;
-case 183:
+ goto tr74;
+case 194:
if ( (*( sm->p)) == 111 )
- goto st184;
- goto tr63;
-st184:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof184;
-case 184:
+ goto tr226;
+ goto tr74;
+case 195:
if ( (*( sm->p)) == 105 )
- goto st185;
- goto tr63;
-st185:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof185;
-case 185:
+ goto tr227;
+ goto tr74;
+case 196:
if ( (*( sm->p)) == 108 )
- goto st186;
- goto tr63;
-st186:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof186;
-case 186:
+ goto tr228;
+ goto tr74;
+case 197:
if ( (*( sm->p)) == 101 )
- goto st187;
- goto tr63;
-st187:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof187;
-case 187:
+ goto tr229;
+ goto tr74;
+case 198:
if ( (*( sm->p)) == 114 )
- goto st188;
- goto tr63;
-st188:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof188;
-case 188:
+ goto tr230;
+ goto tr74;
+case 199:
if ( (*( sm->p)) == 93 )
- goto tr220;
- goto tr63;
-st189:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof189;
-case 189:
+ goto tr231;
+ goto tr74;
+case 200:
if ( (*( sm->p)) == 110 )
- goto st190;
- goto tr63;
-st190:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof190;
-case 190:
+ goto tr232;
+ goto tr74;
+case 201:
if ( (*( sm->p)) == 93 )
- goto tr222;
- goto tr63;
-st191:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof191;
-case 191:
+ goto tr233;
+ goto tr74;
+case 202:
if ( (*( sm->p)) == 93 )
- goto tr223;
- goto tr63;
-tr334:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st291;
-st291:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof291;
-case 291:
-#line 4177 "ext/dtext/dtext.c"
+ goto tr234;
+ goto tr74;
+case 305:
if ( (*( sm->p)) == 116 )
- goto st193;
+ goto tr410;
if ( 49 <= (*( sm->p)) && (*( sm->p)) <= 54 )
- goto tr394;
- goto tr343;
-tr394:
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st192;
-st192:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof192;
-case 192:
-#line 4193 "ext/dtext/dtext.c"
+ goto tr409;
+ goto tr358;
+case 203:
if ( (*( sm->p)) == 46 )
- goto tr224;
- goto tr63;
-tr224:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st292;
-st292:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof292;
-case 292:
-#line 4207 "ext/dtext/dtext.c"
+ goto tr235;
+ goto tr74;
+case 306:
switch( (*( sm->p)) ) {
- case 9: goto st292;
- case 32: goto st292;
+ case 9: goto tr412;
+ case 32: goto tr412;
}
- goto tr396;
-st193:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof193;
-case 193:
+ goto tr411;
+case 204:
if ( (*( sm->p)) == 116 )
- goto st194;
- goto tr63;
-st194:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof194;
-case 194:
+ goto tr236;
+ goto tr74;
+case 205:
if ( (*( sm->p)) == 112 )
- goto st195;
- goto tr63;
-st195:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof195;
-case 195:
+ goto tr237;
+ goto tr74;
+case 206:
switch( (*( sm->p)) ) {
- case 58: goto st196;
- case 115: goto st199;
+ case 58: goto tr238;
+ case 115: goto tr239;
}
- goto tr63;
-st196:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof196;
-case 196:
+ goto tr74;
+case 207:
if ( (*( sm->p)) == 47 )
- goto st197;
- goto tr63;
-st197:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof197;
-case 197:
+ goto tr240;
+ goto tr74;
+case 208:
if ( (*( sm->p)) == 47 )
- goto st198;
- goto tr63;
-st198:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof198;
-case 198:
+ goto tr241;
+ goto tr74;
+case 209:
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto st293;
- goto tr63;
-st293:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof293;
-case 293:
+ goto tr242;
+ goto tr74;
+case 307:
if ( 33 <= (*( sm->p)) && (*( sm->p)) <= 126 )
- goto st293;
- goto tr398;
-st199:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof199;
-case 199:
+ goto tr242;
+ goto tr413;
+case 210:
if ( (*( sm->p)) == 58 )
- goto st196;
- goto tr63;
-tr335:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st294;
-st294:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof294;
-case 294:
-#line 4279 "ext/dtext/dtext.c"
+ goto tr238;
+ goto tr74;
+case 308:
if ( (*( sm->p)) == 123 )
- goto st200;
- goto tr343;
-st200:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof200;
-case 200:
+ goto tr414;
+ goto tr358;
+case 211:
if ( (*( sm->p)) == 125 )
- goto tr63;
- goto tr232;
-tr232:
+ goto tr74;
+ goto tr243;
+case 212:
+ if ( (*( sm->p)) == 125 )
+ goto tr245;
+ goto tr244;
+case 213:
+ if ( (*( sm->p)) == 125 )
+ goto tr246;
+ goto tr74;
+case 309:
+ switch( (*( sm->p)) ) {
+ case 0: goto tr416;
+ case 91: goto tr417;
+ }
+ goto tr415;
+case 310:
+ if ( (*( sm->p)) == 47 )
+ goto tr419;
+ goto tr418;
+case 214:
+ if ( (*( sm->p)) == 99 )
+ goto tr248;
+ goto tr247;
+case 215:
+ if ( (*( sm->p)) == 111 )
+ goto tr249;
+ goto tr247;
+case 216:
+ if ( (*( sm->p)) == 100 )
+ goto tr250;
+ goto tr247;
+case 217:
+ if ( (*( sm->p)) == 101 )
+ goto tr251;
+ goto tr247;
+case 218:
+ if ( (*( sm->p)) == 93 )
+ goto tr252;
+ goto tr247;
+case 311:
+ switch( (*( sm->p)) ) {
+ case 0: goto tr421;
+ case 91: goto tr422;
+ }
+ goto tr420;
+case 312:
+ if ( (*( sm->p)) == 47 )
+ goto tr424;
+ goto tr423;
+case 219:
+ if ( (*( sm->p)) == 110 )
+ goto tr254;
+ goto tr253;
+case 220:
+ if ( (*( sm->p)) == 111 )
+ goto tr255;
+ goto tr253;
+case 221:
+ if ( (*( sm->p)) == 100 )
+ goto tr256;
+ goto tr253;
+case 222:
+ if ( (*( sm->p)) == 116 )
+ goto tr257;
+ goto tr253;
+case 223:
+ if ( (*( sm->p)) == 101 )
+ goto tr258;
+ goto tr253;
+case 224:
+ if ( (*( sm->p)) == 120 )
+ goto tr259;
+ goto tr253;
+case 225:
+ if ( (*( sm->p)) == 116 )
+ goto tr260;
+ goto tr253;
+case 226:
+ if ( (*( sm->p)) == 93 )
+ goto tr261;
+ goto tr253;
+case 313:
+ switch( (*( sm->p)) ) {
+ case 0: goto tr426;
+ case 91: goto tr427;
+ }
+ goto tr425;
+case 314:
+ switch( (*( sm->p)) ) {
+ case 47: goto tr429;
+ case 116: goto tr430;
+ }
+ goto tr428;
+case 227:
+ if ( (*( sm->p)) == 116 )
+ goto tr263;
+ goto tr262;
+case 228:
+ switch( (*( sm->p)) ) {
+ case 97: goto tr264;
+ case 98: goto tr265;
+ case 104: goto tr266;
+ case 114: goto tr267;
+ }
+ goto tr262;
+case 229:
+ if ( (*( sm->p)) == 98 )
+ goto tr268;
+ goto tr262;
+case 230:
+ if ( (*( sm->p)) == 108 )
+ goto tr269;
+ goto tr262;
+case 231:
+ if ( (*( sm->p)) == 101 )
+ goto tr270;
+ goto tr262;
+case 232:
+ if ( (*( sm->p)) == 93 )
+ goto tr271;
+ goto tr262;
+case 233:
+ if ( (*( sm->p)) == 111 )
+ goto tr272;
+ goto tr262;
+case 234:
+ if ( (*( sm->p)) == 100 )
+ goto tr273;
+ goto tr262;
+case 235:
+ if ( (*( sm->p)) == 121 )
+ goto tr274;
+ goto tr262;
+case 236:
+ if ( (*( sm->p)) == 93 )
+ goto tr275;
+ goto tr262;
+case 237:
+ if ( (*( sm->p)) == 101 )
+ goto tr276;
+ goto tr262;
+case 238:
+ if ( (*( sm->p)) == 97 )
+ goto tr277;
+ goto tr262;
+case 239:
+ if ( (*( sm->p)) == 100 )
+ goto tr278;
+ goto tr262;
+case 240:
+ if ( (*( sm->p)) == 93 )
+ goto tr279;
+ goto tr262;
+case 241:
+ if ( (*( sm->p)) == 93 )
+ goto tr280;
+ goto tr262;
+case 242:
+ switch( (*( sm->p)) ) {
+ case 98: goto tr281;
+ case 100: goto tr282;
+ case 104: goto tr283;
+ case 114: goto tr284;
+ }
+ goto tr262;
+case 243:
+ if ( (*( sm->p)) == 111 )
+ goto tr285;
+ goto tr262;
+case 244:
+ if ( (*( sm->p)) == 100 )
+ goto tr286;
+ goto tr262;
+case 245:
+ if ( (*( sm->p)) == 121 )
+ goto tr287;
+ goto tr262;
+case 246:
+ if ( (*( sm->p)) == 93 )
+ goto tr288;
+ goto tr262;
+case 247:
+ if ( (*( sm->p)) == 93 )
+ goto tr289;
+ goto tr262;
+case 248:
+ switch( (*( sm->p)) ) {
+ case 93: goto tr290;
+ case 101: goto tr291;
+ }
+ goto tr262;
+case 249:
+ if ( (*( sm->p)) == 97 )
+ goto tr292;
+ goto tr262;
+case 250:
+ if ( (*( sm->p)) == 100 )
+ goto tr293;
+ goto tr262;
+case 251:
+ if ( (*( sm->p)) == 93 )
+ goto tr294;
+ goto tr262;
+case 252:
+ if ( (*( sm->p)) == 93 )
+ goto tr295;
+ goto tr262;
+case 315:
+ switch( (*( sm->p)) ) {
+ case 0: goto tr432;
+ case 10: goto tr433;
+ case 13: goto tr434;
+ case 42: goto tr435;
+ }
+ goto tr431;
+case 316:
+ switch( (*( sm->p)) ) {
+ case 10: goto tr297;
+ case 13: goto tr436;
+ }
+ goto tr296;
+case 253:
+ if ( (*( sm->p)) == 10 )
+ goto tr297;
+ goto tr296;
+case 317:
+ if ( (*( sm->p)) == 10 )
+ goto tr433;
+ goto tr437;
+case 318:
+ switch( (*( sm->p)) ) {
+ case 9: goto tr301;
+ case 32: goto tr301;
+ case 42: goto tr302;
+ }
+ goto tr437;
+case 254:
+ switch( (*( sm->p)) ) {
+ case 0: goto tr298;
+ case 9: goto tr300;
+ case 10: goto tr298;
+ case 13: goto tr298;
+ case 32: goto tr300;
+ }
+ goto tr299;
+case 319:
+ switch( (*( sm->p)) ) {
+ case 0: goto tr438;
+ case 10: goto tr438;
+ case 13: goto tr438;
+ }
+ goto tr439;
+case 320:
+ switch( (*( sm->p)) ) {
+ case 0: goto tr438;
+ case 9: goto tr300;
+ case 10: goto tr438;
+ case 13: goto tr438;
+ case 32: goto tr300;
+ }
+ goto tr299;
+case 255:
+ switch( (*( sm->p)) ) {
+ case 9: goto tr301;
+ case 32: goto tr301;
+ case 42: goto tr302;
+ }
+ goto tr298;
+ }
+
+ tr57: sm->cs = 0; goto _again;
+ tr310: sm->cs = 1; goto _again;
+ tr5: sm->cs = 2; goto f4;
+ tr6: sm->cs = 3; goto _again;
+ tr314: sm->cs = 4; goto _again;
+ tr7: sm->cs = 5; goto _again;
+ tr8: sm->cs = 6; goto _again;
+ tr9: sm->cs = 7; goto _again;
+ tr10: sm->cs = 8; goto _again;
+ tr11: sm->cs = 9; goto _again;
+ tr12: sm->cs = 10; goto _again;
+ tr13: sm->cs = 11; goto _again;
+ tr315: sm->cs = 12; goto _again;
+ tr15: sm->cs = 13; goto _again;
+ tr16: sm->cs = 14; goto _again;
+ tr17: sm->cs = 15; goto _again;
+ tr316: sm->cs = 16; goto _again;
+ tr19: sm->cs = 17; goto _again;
+ tr20: sm->cs = 18; goto _again;
+ tr21: sm->cs = 19; goto _again;
+ tr22: sm->cs = 20; goto _again;
+ tr23: sm->cs = 21; goto _again;
+ tr24: sm->cs = 22; goto _again;
+ tr27: sm->cs = 23; goto _again;
+ tr26: sm->cs = 23; goto f6;
+ tr317: sm->cs = 24; goto _again;
+ tr29: sm->cs = 25; goto _again;
+ tr30: sm->cs = 26; goto _again;
+ tr31: sm->cs = 27; goto _again;
+ tr32: sm->cs = 28; goto _again;
+ tr33: sm->cs = 29; goto _again;
+ tr34: sm->cs = 30; goto _again;
+ tr318: sm->cs = 31; goto _again;
+ tr36: sm->cs = 32; goto _again;
+ tr37: sm->cs = 33; goto _again;
+ tr38: sm->cs = 34; goto _again;
+ tr39: sm->cs = 35; goto _again;
+ tr319: sm->cs = 36; goto _again;
+ tr41: sm->cs = 37; goto _again;
+ tr42: sm->cs = 38; goto _again;
+ tr43: sm->cs = 39; goto _again;
+ tr44: sm->cs = 40; goto _again;
+ tr45: sm->cs = 41; goto _again;
+ tr46: sm->cs = 42; goto _again;
+ tr320: sm->cs = 43; goto _again;
+ tr48: sm->cs = 44; goto _again;
+ tr50: sm->cs = 45; goto _again;
+ tr51: sm->cs = 46; goto _again;
+ tr52: sm->cs = 47; goto _again;
+ tr49: sm->cs = 48; goto _again;
+ tr328: sm->cs = 49; goto f6;
+ tr331: sm->cs = 50; goto _again;
+ tr56: sm->cs = 51; goto _again;
+ tr58: sm->cs = 52; goto _again;
+ tr59: sm->cs = 53; goto _again;
+ tr61: sm->cs = 54; goto _again;
+ tr62: sm->cs = 55; goto _again;
+ tr63: sm->cs = 56; goto _again;
+ tr64: sm->cs = 57; goto _again;
+ tr66: sm->cs = 58; goto _again;
+ tr65: sm->cs = 59; goto _again;
+ tr352: sm->cs = 60; goto _again;
+ tr71: sm->cs = 61; goto _again;
+ tr353: sm->cs = 61; goto f6;
+ tr70: sm->cs = 62; goto f4;
+ tr75: sm->cs = 63; goto _again;
+ tr359: sm->cs = 63; goto f6;
+ tr76: sm->cs = 64; goto f4;
+ tr77: sm->cs = 65; goto _again;
+ tr99: sm->cs = 66; goto _again;
+ tr78: sm->cs = 66; goto f3;
+ tr79: sm->cs = 67; goto _again;
+ tr92: sm->cs = 68; goto _again;
+ tr82: sm->cs = 68; goto f3;
+ tr84: sm->cs = 69; goto _again;
+ tr83: sm->cs = 70; goto f3;
+ tr86: sm->cs = 71; goto _again;
+ tr87: sm->cs = 72; goto _again;
+ tr88: sm->cs = 73; goto _again;
+ tr89: sm->cs = 74; goto _again;
+ tr91: sm->cs = 75; goto _again;
+ tr90: sm->cs = 76; goto _again;
+ tr80: sm->cs = 77; goto f3;
+ tr93: sm->cs = 78; goto _again;
+ tr94: sm->cs = 79; goto _again;
+ tr95: sm->cs = 80; goto _again;
+ tr96: sm->cs = 81; goto _again;
+ tr98: sm->cs = 82; goto _again;
+ tr97: sm->cs = 83; goto _again;
+ tr366: sm->cs = 84; goto _again;
+ tr100: sm->cs = 85; goto _again;
+ tr101: sm->cs = 86; goto _again;
+ tr102: sm->cs = 87; goto _again;
+ tr103: sm->cs = 88; goto _again;
+ tr104: sm->cs = 89; goto _again;
+ tr105: sm->cs = 90; goto _again;
+ tr369: sm->cs = 91; goto _again;
+ tr107: sm->cs = 92; goto _again;
+ tr108: sm->cs = 93; goto _again;
+ tr109: sm->cs = 94; goto _again;
+ tr110: sm->cs = 95; goto _again;
+ tr111: sm->cs = 96; goto _again;
+ tr112: sm->cs = 97; goto _again;
+ tr113: sm->cs = 98; goto _again;
+ tr372: sm->cs = 99; goto _again;
+ tr115: sm->cs = 100; goto _again;
+ tr116: sm->cs = 101; goto _again;
+ tr117: sm->cs = 102; goto _again;
+ tr118: sm->cs = 103; goto _again;
+ tr119: sm->cs = 104; goto _again;
+ tr375: sm->cs = 105; goto _again;
+ tr121: sm->cs = 106; goto _again;
+ tr122: sm->cs = 107; goto _again;
+ tr123: sm->cs = 108; goto _again;
+ tr124: sm->cs = 109; goto _again;
+ tr125: sm->cs = 110; goto _again;
+ tr378: sm->cs = 111; goto _again;
+ tr127: sm->cs = 112; goto _again;
+ tr128: sm->cs = 113; goto _again;
+ tr129: sm->cs = 114; goto _again;
+ tr130: sm->cs = 115; goto _again;
+ tr131: sm->cs = 116; goto _again;
+ tr381: sm->cs = 117; goto f4;
+ tr134: sm->cs = 118; goto _again;
+ tr379: sm->cs = 119; goto _again;
+ tr136: sm->cs = 120; goto _again;
+ tr138: sm->cs = 121; goto _again;
+ tr139: sm->cs = 122; goto _again;
+ tr140: sm->cs = 123; goto _again;
+ tr137: sm->cs = 124; goto _again;
+ tr142: sm->cs = 125; goto _again;
+ tr143: sm->cs = 126; goto _again;
+ tr144: sm->cs = 127; goto _again;
+ tr389: sm->cs = 128; goto _again;
+ tr146: sm->cs = 129; goto _again;
+ tr147: sm->cs = 130; goto _again;
+ tr148: sm->cs = 131; goto _again;
+ tr149: sm->cs = 132; goto _again;
+ tr150: sm->cs = 133; goto _again;
+ tr391: sm->cs = 134; goto f4;
+ tr153: sm->cs = 135; goto _again;
+ tr395: sm->cs = 136; goto _again;
+ tr155: sm->cs = 137; goto _again;
+ tr156: sm->cs = 138; goto _again;
+ tr157: sm->cs = 139; goto _again;
+ tr158: sm->cs = 140; goto _again;
+ tr398: sm->cs = 141; goto _again;
+ tr160: sm->cs = 142; goto _again;
+ tr161: sm->cs = 143; goto _again;
+ tr168: sm->cs = 144; goto _again;
+ tr169: sm->cs = 145; goto _again;
+ tr170: sm->cs = 146; goto _again;
+ tr171: sm->cs = 147; goto _again;
+ tr172: sm->cs = 148; goto _again;
+ tr162: sm->cs = 149; goto _again;
+ tr163: sm->cs = 150; goto _again;
+ tr175: sm->cs = 151; goto _again;
+ tr176: sm->cs = 152; goto _again;
+ tr177: sm->cs = 153; goto _again;
+ tr178: sm->cs = 154; goto _again;
+ tr164: sm->cs = 155; goto _again;
+ tr181: sm->cs = 156; goto _again;
+ tr182: sm->cs = 157; goto _again;
+ tr183: sm->cs = 158; goto _again;
+ tr184: sm->cs = 159; goto _again;
+ tr185: sm->cs = 160; goto _again;
+ tr186: sm->cs = 161; goto _again;
+ tr165: sm->cs = 162; goto _again;
+ tr188: sm->cs = 163; goto _again;
+ tr189: sm->cs = 164; goto _again;
+ tr190: sm->cs = 165; goto _again;
+ tr166: sm->cs = 166; goto _again;
+ tr399: sm->cs = 167; goto _again;
+ tr196: sm->cs = 168; goto _again;
+ tr195: sm->cs = 168; goto f6;
+ tr197: sm->cs = 169; goto f4;
+ tr198: sm->cs = 170; goto f4;
+ tr201: sm->cs = 171; goto _again;
+ tr200: sm->cs = 171; goto f3;
+ tr202: sm->cs = 172; goto f27;
+ tr400: sm->cs = 173; goto _again;
+ tr401: sm->cs = 174; goto _again;
+ tr205: sm->cs = 175; goto _again;
+ tr206: sm->cs = 176; goto _again;
+ tr207: sm->cs = 177; goto _again;
+ tr208: sm->cs = 178; goto _again;
+ tr209: sm->cs = 179; goto _again;
+ tr402: sm->cs = 180; goto _again;
+ tr403: sm->cs = 181; goto _again;
+ tr212: sm->cs = 182; goto _again;
+ tr213: sm->cs = 183; goto _again;
+ tr214: sm->cs = 184; goto _again;
+ tr215: sm->cs = 185; goto _again;
+ tr216: sm->cs = 186; goto _again;
+ tr217: sm->cs = 187; goto _again;
+ tr404: sm->cs = 188; goto _again;
+ tr219: sm->cs = 189; goto _again;
+ tr220: sm->cs = 190; goto _again;
+ tr221: sm->cs = 191; goto _again;
+ tr222: sm->cs = 192; goto _again;
+ tr405: sm->cs = 193; goto _again;
+ tr225: sm->cs = 194; goto _again;
+ tr226: sm->cs = 195; goto _again;
+ tr227: sm->cs = 196; goto _again;
+ tr228: sm->cs = 197; goto _again;
+ tr229: sm->cs = 198; goto _again;
+ tr230: sm->cs = 199; goto _again;
+ tr406: sm->cs = 200; goto _again;
+ tr232: sm->cs = 201; goto _again;
+ tr407: sm->cs = 202; goto _again;
+ tr409: sm->cs = 203; goto f6;
+ tr410: sm->cs = 204; goto _again;
+ tr236: sm->cs = 205; goto _again;
+ tr237: sm->cs = 206; goto _again;
+ tr238: sm->cs = 207; goto _again;
+ tr240: sm->cs = 208; goto _again;
+ tr241: sm->cs = 209; goto _again;
+ tr239: sm->cs = 210; goto _again;
+ tr414: sm->cs = 211; goto _again;
+ tr244: sm->cs = 212; goto _again;
+ tr243: sm->cs = 212; goto f6;
+ tr245: sm->cs = 213; goto f4;
+ tr419: sm->cs = 214; goto _again;
+ tr248: sm->cs = 215; goto _again;
+ tr249: sm->cs = 216; goto _again;
+ tr250: sm->cs = 217; goto _again;
+ tr251: sm->cs = 218; goto _again;
+ tr424: sm->cs = 219; goto _again;
+ tr254: sm->cs = 220; goto _again;
+ tr255: sm->cs = 221; goto _again;
+ tr256: sm->cs = 222; goto _again;
+ tr257: sm->cs = 223; goto _again;
+ tr258: sm->cs = 224; goto _again;
+ tr259: sm->cs = 225; goto _again;
+ tr260: sm->cs = 226; goto _again;
+ tr429: sm->cs = 227; goto _again;
+ tr263: sm->cs = 228; goto _again;
+ tr264: sm->cs = 229; goto _again;
+ tr268: sm->cs = 230; goto _again;
+ tr269: sm->cs = 231; goto _again;
+ tr270: sm->cs = 232; goto _again;
+ tr265: sm->cs = 233; goto _again;
+ tr272: sm->cs = 234; goto _again;
+ tr273: sm->cs = 235; goto _again;
+ tr274: sm->cs = 236; goto _again;
+ tr266: sm->cs = 237; goto _again;
+ tr276: sm->cs = 238; goto _again;
+ tr277: sm->cs = 239; goto _again;
+ tr278: sm->cs = 240; goto _again;
+ tr267: sm->cs = 241; goto _again;
+ tr430: sm->cs = 242; goto _again;
+ tr281: sm->cs = 243; goto _again;
+ tr285: sm->cs = 244; goto _again;
+ tr286: sm->cs = 245; goto _again;
+ tr287: sm->cs = 246; goto _again;
+ tr282: sm->cs = 247; goto _again;
+ tr283: sm->cs = 248; goto _again;
+ tr291: sm->cs = 249; goto _again;
+ tr292: sm->cs = 250; goto _again;
+ tr293: sm->cs = 251; goto _again;
+ tr284: sm->cs = 252; goto _again;
+ tr436: sm->cs = 253; goto _again;
+ tr301: sm->cs = 254; goto f4;
+ tr302: sm->cs = 255; goto _again;
+ tr0: sm->cs = 256; goto f0;
+ tr2: sm->cs = 256; goto f2;
+ tr14: sm->cs = 256; goto f5;
+ tr53: sm->cs = 256; goto f7;
+ tr54: sm->cs = 256; goto f8;
+ tr303: sm->cs = 256; goto f58;
+ tr304: sm->cs = 256; goto f59;
+ tr311: sm->cs = 256; goto f62;
+ tr312: sm->cs = 256; goto f63;
+ tr321: sm->cs = 256; goto f64;
+ tr322: sm->cs = 256; goto f65;
+ tr324: sm->cs = 256; goto f66;
+ tr325: sm->cs = 256; goto f67;
+ tr326: sm->cs = 256; goto f68;
+ tr327: sm->cs = 256; goto f69;
+ tr329: sm->cs = 256; goto f70;
+ tr1: sm->cs = 257; goto f1;
+ tr305: sm->cs = 257; goto f60;
+ tr306: sm->cs = 258; goto _again;
+ tr307: sm->cs = 259; goto f14;
+ tr313: sm->cs = 260; goto _again;
+ tr3: sm->cs = 260; goto f3;
+ tr4: sm->cs = 261; goto f3;
+ tr308: sm->cs = 262; goto f61;
+ tr18: sm->cs = 263; goto _again;
+ tr323: sm->cs = 264; goto _again;
+ tr28: sm->cs = 264; goto f4;
+ tr25: sm->cs = 265; goto _again;
+ tr35: sm->cs = 266; goto _again;
+ tr40: sm->cs = 267; goto _again;
+ tr47: sm->cs = 268; goto _again;
+ tr309: sm->cs = 269; goto f61;
+ tr330: sm->cs = 270; goto _again;
+ tr55: sm->cs = 270; goto f4;
+ tr332: sm->cs = 271; goto f71;
+ tr60: sm->cs = 272; goto _again;
+ tr333: sm->cs = 273; goto f72;
+ tr334: sm->cs = 273; goto f73;
+ tr67: sm->cs = 274; goto f9;
+ tr69: sm->cs = 274; goto f11;
+ tr74: sm->cs = 274; goto f12;
+ tr85: sm->cs = 274; goto f13;
+ tr133: sm->cs = 274; goto f15;
+ tr152: sm->cs = 274; goto f16;
+ tr167: sm->cs = 274; goto f17;
+ tr173: sm->cs = 274; goto f18;
+ tr174: sm->cs = 274; goto f19;
+ tr180: sm->cs = 274; goto f20;
+ tr187: sm->cs = 274; goto f21;
+ tr191: sm->cs = 274; goto f22;
+ tr192: sm->cs = 274; goto f23;
+ tr193: sm->cs = 274; goto f24;
+ tr194: sm->cs = 274; goto f25;
+ tr199: sm->cs = 274; goto f26;
+ tr203: sm->cs = 274; goto f28;
+ tr204: sm->cs = 274; goto f29;
+ tr210: sm->cs = 274; goto f30;
+ tr211: sm->cs = 274; goto f31;
+ tr218: sm->cs = 274; goto f32;
+ tr223: sm->cs = 274; goto f33;
+ tr224: sm->cs = 274; goto f34;
+ tr231: sm->cs = 274; goto f35;
+ tr233: sm->cs = 274; goto f36;
+ tr234: sm->cs = 274; goto f37;
+ tr246: sm->cs = 274; goto f38;
+ tr335: sm->cs = 274; goto f74;
+ tr336: sm->cs = 274; goto f75;
+ tr351: sm->cs = 274; goto f77;
+ tr354: sm->cs = 274; goto f78;
+ tr355: sm->cs = 274; goto f79;
+ tr357: sm->cs = 274; goto f80;
+ tr358: sm->cs = 274; goto f81;
+ tr360: sm->cs = 274; goto f82;
+ tr362: sm->cs = 274; goto f83;
+ tr365: sm->cs = 274; goto f86;
+ tr367: sm->cs = 274; goto f87;
+ tr370: sm->cs = 274; goto f88;
+ tr373: sm->cs = 274; goto f89;
+ tr376: sm->cs = 274; goto f90;
+ tr380: sm->cs = 274; goto f91;
+ tr383: sm->cs = 274; goto f92;
+ tr385: sm->cs = 274; goto f93;
+ tr387: sm->cs = 274; goto f94;
+ tr390: sm->cs = 274; goto f95;
+ tr393: sm->cs = 274; goto f96;
+ tr396: sm->cs = 274; goto f97;
+ tr408: sm->cs = 274; goto f98;
+ tr411: sm->cs = 274; goto f99;
+ tr413: sm->cs = 274; goto f100;
+ tr337: sm->cs = 275; goto f76;
+ tr68: sm->cs = 276; goto f10;
+ tr356: sm->cs = 277; goto _again;
+ tr72: sm->cs = 277; goto f3;
+ tr73: sm->cs = 278; goto f3;
+ tr338: sm->cs = 279; goto _again;
+ tr339: sm->cs = 280; goto f61;
+ tr81: sm->cs = 281; goto _again;
+ tr340: sm->cs = 282; goto _again;
+ tr361: sm->cs = 283; goto f6;
+ tr363: sm->cs = 284; goto f84;
+ tr364: sm->cs = 284; goto f85;
+ tr341: sm->cs = 285; goto f61;
+ tr368: sm->cs = 286; goto _again;
+ tr106: sm->cs = 286; goto f6;
+ tr342: sm->cs = 287; goto f61;
+ tr371: sm->cs = 288; goto _again;
+ tr114: sm->cs = 288; goto f6;
+ tr343: sm->cs = 289; goto f61;
+ tr374: sm->cs = 290; goto _again;
+ tr120: sm->cs = 290; goto f6;
+ tr344: sm->cs = 291; goto f61;
+ tr377: sm->cs = 292; goto _again;
+ tr126: sm->cs = 292; goto f6;
+ tr345: sm->cs = 293; goto f61;
+ tr132: sm->cs = 294; goto f14;
+ tr382: sm->cs = 294; goto f61;
+ tr384: sm->cs = 295; goto _again;
+ tr135: sm->cs = 295; goto f3;
+ tr386: sm->cs = 296; goto _again;
+ tr141: sm->cs = 296; goto f6;
+ tr388: sm->cs = 297; goto _again;
+ tr145: sm->cs = 297; goto f6;
+ tr346: sm->cs = 298; goto f61;
+ tr151: sm->cs = 299; goto f14;
+ tr392: sm->cs = 299; goto f61;
+ tr394: sm->cs = 300; goto _again;
+ tr154: sm->cs = 300; goto f3;
+ tr347: sm->cs = 301; goto f61;
+ tr397: sm->cs = 302; goto _again;
+ tr159: sm->cs = 302; goto f6;
+ tr348: sm->cs = 303; goto f61;
+ tr179: sm->cs = 304; goto _again;
+ tr349: sm->cs = 305; goto f61;
+ tr412: sm->cs = 306; goto _again;
+ tr235: sm->cs = 306; goto f4;
+ tr242: sm->cs = 307; goto _again;
+ tr350: sm->cs = 308; goto f61;
+ tr247: sm->cs = 309; goto f39;
+ tr252: sm->cs = 309; goto f40;
+ tr415: sm->cs = 309; goto f101;
+ tr416: sm->cs = 309; goto f102;
+ tr418: sm->cs = 309; goto f103;
+ tr417: sm->cs = 310; goto f61;
+ tr253: sm->cs = 311; goto f41;
+ tr261: sm->cs = 311; goto f42;
+ tr420: sm->cs = 311; goto f104;
+ tr421: sm->cs = 311; goto f105;
+ tr423: sm->cs = 311; goto f106;
+ tr422: sm->cs = 312; goto f61;
+ tr262: sm->cs = 313; goto f43;
+ tr271: sm->cs = 313; goto f44;
+ tr275: sm->cs = 313; goto f45;
+ tr279: sm->cs = 313; goto f46;
+ tr280: sm->cs = 313; goto f47;
+ tr288: sm->cs = 313; goto f48;
+ tr289: sm->cs = 313; goto f49;
+ tr290: sm->cs = 313; goto f50;
+ tr294: sm->cs = 313; goto f51;
+ tr295: sm->cs = 313; goto f52;
+ tr425: sm->cs = 313; goto f107;
+ tr426: sm->cs = 313; goto f108;
+ tr428: sm->cs = 313; goto f109;
+ tr427: sm->cs = 314; goto f61;
+ tr296: sm->cs = 315; goto f53;
+ tr298: sm->cs = 315; goto f55;
+ tr431: sm->cs = 315; goto f110;
+ tr432: sm->cs = 315; goto f111;
+ tr437: sm->cs = 315; goto f113;
+ tr438: sm->cs = 315; goto f114;
+ tr297: sm->cs = 316; goto f54;
+ tr433: sm->cs = 316; goto f112;
+ tr434: sm->cs = 317; goto _again;
+ tr435: sm->cs = 318; goto f14;
+ tr439: sm->cs = 319; goto _again;
+ tr299: sm->cs = 319; goto f3;
+ tr300: sm->cs = 320; goto f3;
+
+f6:
#line 96 "ext/dtext/dtext.rl"
{
sm->a1 = sm->p;
}
- goto st201;
-st201:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof201;
-case 201:
-#line 4300 "ext/dtext/dtext.c"
- if ( (*( sm->p)) == 125 )
- goto tr234;
- goto st201;
-tr234:
+ goto _again;
+f4:
#line 100 "ext/dtext/dtext.rl"
{
sm->a2 = sm->p;
}
- goto st202;
-st202:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof202;
-case 202:
-#line 4314 "ext/dtext/dtext.c"
- if ( (*( sm->p)) == 125 )
- goto tr235;
- goto tr63;
-tr236:
-#line 637 "ext/dtext/dtext.rl"
+ goto _again;
+f3:
+#line 104 "ext/dtext/dtext.rl"
+ {
+ sm->b1 = sm->p;
+}
+ goto _again;
+f27:
+#line 108 "ext/dtext/dtext.rl"
+ {
+ sm->b2 = sm->p;
+}
+ goto _again;
+f61:
+#line 1 "NONE"
+ {( sm->te) = ( sm->p)+1;}
+ goto _again;
+f71:
+#line 152 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;}
+ goto _again;
+f73:
+#line 156 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;}
+ goto _again;
+f72:
+#line 158 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;}
+ goto _again;
+f38:
+#line 269 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ append(sm, true, "<a rel=\"nofollow\" href=\"/posts?tags=");
+ append_segment_uri_escaped(sm, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f26:
+#line 277 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ GString * segment = g_string_new_len(sm->a1, sm->a2 - sm->a1);
+ GString * lowercase_segment = NULL;
+ underscore_string(segment->str, segment->len);
+
+ if (g_utf8_validate(segment->str, -1, NULL)) {
+ lowercase_segment = g_string_new(g_utf8_strdown(segment->str, -1));
+ } else {
+ lowercase_segment = g_string_new(g_ascii_strdown(segment->str, -1));
+ }
+
+ append(sm, true, "<a href=\"/wiki_pages/show_or_new?title=");
+ append_segment_uri_escaped(sm, lowercase_segment->str, lowercase_segment->str + lowercase_segment->len - 1);
+ append(sm, true, "\">");
+ append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+
+ g_string_free(lowercase_segment, TRUE);
+ g_string_free(segment, TRUE);
+ }}
+ goto _again;
+f28:
+#line 298 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ GString * segment = g_string_new_len(sm->a1, sm->a2 - sm->a1);
+ GString * lowercase_segment = NULL;
+ underscore_string(segment->str, segment->len);
+
+ if (g_utf8_validate(segment->str, -1, NULL)) {
+ lowercase_segment = g_string_new(g_utf8_strdown(segment->str, -1));
+ } else {
+ lowercase_segment = g_string_new(g_ascii_strdown(segment->str, -1));
+ }
+
+ append(sm, true, "<a href=\"/wiki_pages/show_or_new?title=");
+ append_segment_uri_escaped(sm, lowercase_segment->str, lowercase_segment->str + lowercase_segment->len - 1);
+ append(sm, true, "\">");
+ append_segment_html_escaped(sm, sm->b1, sm->b2 - 1);
+ append(sm, true, "</a>");
+
+ g_string_free(lowercase_segment, TRUE);
+ g_string_free(segment, TRUE);
+ }}
+ goto _again;
+f29:
+#line 412 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_push(sm, &INLINE_B);
+ append(sm, true, "<strong>");
+ }}
+ goto _again;
+f17:
+#line 417 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ if (dstack_check(sm, INLINE_B)) {
+ dstack_pop(sm);
+ append(sm, true, "</strong>");
+ } else {
+ append(sm, true, "[/b]");
+ }
+ }}
+ goto _again;
+f31:
+#line 426 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_push(sm, &INLINE_I);
+ append(sm, true, "<em>");
+ }}
+ goto _again;
+f19:
+#line 431 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ if (dstack_check(sm, INLINE_I)) {
+ dstack_pop(sm);
+ append(sm, true, "</em>");
+ } else {
+ append(sm, true, "[/i]");
+ }
+ }}
+ goto _again;
+f34:
+#line 440 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_push(sm, &INLINE_S);
+ append(sm, true, "<s>");
+ }}
+ goto _again;
+f20:
+#line 445 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ if (dstack_check(sm, INLINE_S)) {
+ dstack_pop(sm);
+ append(sm, true, "</s>");
+ } else {
+ append(sm, true, "[/s]");
+ }
+ }}
+ goto _again;
+f37:
+#line 454 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_push(sm, &INLINE_U);
+ append(sm, true, "<u>");
+ }}
+ goto _again;
+f25:
+#line 459 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ if (dstack_check(sm, INLINE_U)) {
+ dstack_pop(sm);
+ append(sm, true, "</u>");
+ } else {
+ append(sm, true, "[/u]");
+ }
+ }}
+ goto _again;
+f36:
+#line 468 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_push(sm, &INLINE_TN);
+ append(sm, true, "<span class=\"tn\">");
+ }}
+ goto _again;
+f24:
+#line 473 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_close_before_block(sm);
+
+ if (dstack_check(sm, BLOCK_TN)) {
+ dstack_pop(sm);
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else if (dstack_check(sm, INLINE_TN)) {
+ dstack_pop(sm);
+ append(sm, true, "</span>");
+ } else {
+ append_block(sm, "[/tn]");
+ }
+ }}
+ goto _again;
+f33:
+#line 495 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ g_debug("inline [quote]");
+ dstack_close_before_block(sm);
+ {( sm->p) = (( sm->ts))-1;}
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f35:
+#line 518 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ g_debug("inline [spoiler]");
+ g_debug(" push <span>");
+ dstack_push(sm, &INLINE_SPOILER);
+ append(sm, true, "<span class=\"spoiler\">");
+ }}
+ goto _again;
+f21:
+#line 525 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ g_debug("inline [/spoiler]");
+ dstack_close_before_block(sm);
+
+ if (dstack_check(sm, INLINE_SPOILER)) {
+ g_debug(" pop dstack");
+ g_debug(" print </span>");
+ dstack_pop(sm);
+ append(sm, true, "</span>");
+ } else if (dstack_check(sm, BLOCK_SPOILER)) {
+ g_debug(" pop dstack");
+ g_debug(" print </div>");
+ g_debug(" return");
+ dstack_pop(sm);
+ append_block(sm, "</div>");
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append_block(sm, "[/spoiler]");
+ }
+ }}
+ goto _again;
+f30:
+#line 546 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ g_debug("inline [expand]");
+ dstack_rewind(sm);
+ {( sm->p) = (((sm->p - 7)))-1;}
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f18:
+#line 553 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_close_before_block(sm);
+
+ if (dstack_check(sm, BLOCK_EXPAND)) {
+ append_block(sm, "</div></div>");
+ dstack_pop(sm);
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append_block(sm, "[/expand]");
+ }
+ }}
+ goto _again;
+f32:
+#line 565 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_push(sm, &INLINE_NODTEXT);
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 311; goto _again;}}
+ }}
+ goto _again;
+f23:
+#line 570 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ if (dstack_check(sm, BLOCK_TH)) {
+ dstack_pop(sm);
+ append_block(sm, "</th>");
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append_block(sm, "[/th]");
+ }
+ }}
+ goto _again;
+f22:
+#line 580 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ if (dstack_check(sm, BLOCK_TD)) {
+ dstack_pop(sm);
+ append_block(sm, "</td>");
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append_block(sm, "[/td]");
+ }
+ }}
+ goto _again;
+f75:
+#line 590 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ g_debug("inline 0");
+ g_debug(" return");
+
+ ( sm->p)--;
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f74:
+#line 626 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ g_debug("inline char: %c", (*( sm->p)));
+ append_c_html_escaped(sm, (*( sm->p)));
+ }}
+ goto _again;
+f100:
+#line 347 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ if (is_boundary_c((*( sm->p)))) {
+ sm->b = true;
+ sm->d = 2;
+ } else {
+ sm->b = false;
+ sm->d = 1;
+ }
+
+ append(sm, true, "<a href=\"");
+ append_segment_html_escaped(sm, sm->ts, sm->te - sm->d);
+ append(sm, true, "\">");
+ append_segment_html_escaped(sm, sm->ts, sm->te - sm->d);
+ append(sm, true, "</a>");
+
+ if (sm->b) {
+ append_c_html_escaped(sm, (*( sm->p)));
+ }
+ }}
+ goto _again;
+f99:
+#line 489 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ dstack_rewind(sm);
+ {( sm->p) = (( sm->a1 - 1))-1;}
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f98:
+#line 502 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("inline [/quote]");
+ dstack_close_before_block(sm);
+
+ if (dstack_check(sm, BLOCK_LI)) {
+ dstack_close_list(sm);
+ }
+
+ if (dstack_check(sm, BLOCK_QUOTE)) {
+ dstack_rewind(sm);
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append_block(sm, "[/quote]");
+ }
+ }}
+ goto _again;
+f78:
+#line 598 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("inline newline2");
+ g_debug(" return");
+
+ if (sm->list_mode) {
+ dstack_close_list(sm);
+ }
+
+ {( sm->p) = (( sm->ts))-1;}
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f77:
+#line 610 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("inline newline");
+
+ if (sm->header_mode) {
+ sm->header_mode = false;
+ dstack_rewind(sm);
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append(sm, true, "<br>");
+ }
+ }}
+ goto _again;
+f80:
+#line 622 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append_c(sm, ' ');
+ }}
+ goto _again;
+f81:
+#line 626 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("inline char: %c", (*( sm->p)));
+ append_c_html_escaped(sm, (*( sm->p)));
+ }}
+ goto _again;
+f16:
+#line 180 "ext/dtext/dtext.rl"
{{( sm->p) = ((( sm->te)))-1;}{
+ append(sm, true, "<a href=\"/forum_topics/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "topic #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f15:
+#line 247 "ext/dtext/dtext.rl"
+ {{( sm->p) = ((( sm->te)))-1;}{
+ append(sm, true, "<a href=\"http://www.pixiv.net/member_illust.php?mode=medium&illust_id=");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "pixiv #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f11:
+#line 610 "ext/dtext/dtext.rl"
+ {{( sm->p) = ((( sm->te)))-1;}{
+ g_debug("inline newline");
+
+ if (sm->header_mode) {
+ sm->header_mode = false;
+ dstack_rewind(sm);
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append(sm, true, "<br>");
+ }
+ }}
+ goto _again;
+f12:
+#line 626 "ext/dtext/dtext.rl"
+ {{( sm->p) = ((( sm->te)))-1;}{
+ g_debug("inline char: %c", (*( sm->p)));
append_c_html_escaped(sm, (*( sm->p)));
}}
- goto st295;
-tr241:
-#line 623 "ext/dtext/dtext.rl"
+ goto _again;
+f9:
+#line 1 "NONE"
+ { switch( ( sm->act) ) {
+ case 21:
+ {{( sm->p) = ((( sm->te)))-1;}
+ append_segment_html_escaped(sm, sm->ts, sm->te - 1);
+ }
+ break;
+ case 22:
+ {{( sm->p) = ((( sm->te)))-1;}
+ if (is_boundary_c((*( sm->p)))) {
+ sm->b = true;
+ sm->d = 2;
+ } else {
+ sm->b = false;
+ sm->d = 1;
+ }
+
+ append(sm, true, "<a rel=\"nofollow\" href=\"/users?name=");
+ append_segment_uri_escaped(sm, sm->a1, sm->a2 - sm->d);
+ append(sm, true, "\">");
+ append_c(sm, '@');
+ append_segment_html_escaped(sm, sm->a1, sm->a2 - sm->d);
+ append(sm, true, "</a>");
+
+ if (sm->b) {
+ append_c_html_escaped(sm, (*( sm->p)));
+ }
+ }
+ break;
+ case 45:
+ {{( sm->p) = ((( sm->te)))-1;}
+ g_debug("inline newline2");
+ g_debug(" return");
+
+ if (sm->list_mode) {
+ dstack_close_list(sm);
+ }
+
+ {( sm->p) = (( sm->ts))-1;}
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }
+ break;
+ case 46:
+ {{( sm->p) = ((( sm->te)))-1;}
+ g_debug("inline newline");
+
+ if (sm->header_mode) {
+ sm->header_mode = false;
+ dstack_rewind(sm);
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append(sm, true, "<br>");
+ }
+ }
+ break;
+ }
+ }
+ goto _again;
+f40:
+#line 633 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
if (dstack_check(sm, BLOCK_CODE)) {
dstack_rewind(sm);
} else {
append(sm, true, "[/code]");
}
{ sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
}}
- goto st295;
-tr400:
-#line 637 "ext/dtext/dtext.rl"
+ goto _again;
+f102:
+#line 642 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- append_c_html_escaped(sm, (*( sm->p)));
- }}
- goto st295;
-tr401:
-#line 632 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
( sm->p)--;
{ sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
}}
- goto st295;
-tr403:
-#line 637 "ext/dtext/dtext.rl"
+ goto _again;
+f101:
+#line 647 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ append_c_html_escaped(sm, (*( sm->p)));
+ }}
+ goto _again;
+f103:
+#line 647 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p);( sm->p)--;{
append_c_html_escaped(sm, (*( sm->p)));
}}
- goto st295;
-st295:
-#line 1 "NONE"
- {( sm->ts) = 0;}
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof295;
-case 295:
-#line 1 "NONE"
- {( sm->ts) = ( sm->p);}
-#line 4362 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 0: goto tr401;
- case 91: goto tr402;
- }
- goto tr400;
-tr402:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st296;
-st296:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof296;
-case 296:
-#line 4376 "ext/dtext/dtext.c"
- if ( (*( sm->p)) == 47 )
- goto st203;
- goto tr403;
-st203:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof203;
-case 203:
- if ( (*( sm->p)) == 99 )
- goto st204;
- goto tr236;
-st204:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof204;
-case 204:
- if ( (*( sm->p)) == 111 )
- goto st205;
- goto tr236;
-st205:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof205;
-case 205:
- if ( (*( sm->p)) == 100 )
- goto st206;
- goto tr236;
-st206:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof206;
-case 206:
- if ( (*( sm->p)) == 101 )
- goto st207;
- goto tr236;
-st207:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof207;
-case 207:
- if ( (*( sm->p)) == 93 )
- goto tr241;
- goto tr236;
-tr242:
-#line 661 "ext/dtext/dtext.rl"
+ goto _again;
+f39:
+#line 647 "ext/dtext/dtext.rl"
{{( sm->p) = ((( sm->te)))-1;}{
append_c_html_escaped(sm, (*( sm->p)));
}}
- goto st297;
-tr250:
-#line 643 "ext/dtext/dtext.rl"
+ goto _again;
+f42:
+#line 653 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
if (dstack_check(sm, BLOCK_NODTEXT)) {
dstack_pop(sm);
append_block(sm, "</p>");
{ sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
@@ -4429,171 +3102,112 @@
{ sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
} else {
append(sm, true, "[/nodtext]");
}
}}
- goto st297;
-tr405:
-#line 661 "ext/dtext/dtext.rl"
+ goto _again;
+f105:
+#line 666 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- append_c_html_escaped(sm, (*( sm->p)));
- }}
- goto st297;
-tr406:
-#line 656 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
( sm->p)--;
{ sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
}}
- goto st297;
-tr408:
-#line 661 "ext/dtext/dtext.rl"
+ goto _again;
+f104:
+#line 671 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ append_c_html_escaped(sm, (*( sm->p)));
+ }}
+ goto _again;
+f106:
+#line 671 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p);( sm->p)--;{
append_c_html_escaped(sm, (*( sm->p)));
}}
- goto st297;
-st297:
-#line 1 "NONE"
- {( sm->ts) = 0;}
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof297;
-case 297:
-#line 1 "NONE"
- {( sm->ts) = ( sm->p);}
-#line 4463 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 0: goto tr406;
- case 91: goto tr407;
- }
- goto tr405;
-tr407:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st298;
-st298:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof298;
-case 298:
-#line 4477 "ext/dtext/dtext.c"
- if ( (*( sm->p)) == 47 )
- goto st208;
- goto tr408;
-st208:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof208;
-case 208:
- if ( (*( sm->p)) == 110 )
- goto st209;
- goto tr242;
-st209:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof209;
-case 209:
- if ( (*( sm->p)) == 111 )
- goto st210;
- goto tr242;
-st210:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof210;
-case 210:
- if ( (*( sm->p)) == 100 )
- goto st211;
- goto tr242;
-st211:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof211;
-case 211:
- if ( (*( sm->p)) == 116 )
- goto st212;
- goto tr242;
-st212:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof212;
-case 212:
- if ( (*( sm->p)) == 101 )
- goto st213;
- goto tr242;
-st213:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof213;
-case 213:
- if ( (*( sm->p)) == 120 )
- goto st214;
- goto tr242;
-st214:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof214;
-case 214:
- if ( (*( sm->p)) == 116 )
- goto st215;
- goto tr242;
-st215:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof215;
-case 215:
- if ( (*( sm->p)) == 93 )
- goto tr250;
- goto tr242;
-tr251:
-#line 736 "ext/dtext/dtext.rl"
- {{( sm->p) = ((( sm->te)))-1;}}
- goto st299;
-tr260:
-#line 721 "ext/dtext/dtext.rl"
+ goto _again;
+f41:
+#line 671 "ext/dtext/dtext.rl"
+ {{( sm->p) = ((( sm->te)))-1;}{
+ append_c_html_escaped(sm, (*( sm->p)));
+ }}
+ goto _again;
+f51:
+#line 677 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- if (dstack_check(sm, BLOCK_TABLE)) {
+ dstack_push(sm, &BLOCK_THEAD);
+ append_block(sm, "<thead>");
+ }}
+ goto _again;
+f46:
+#line 682 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ if (dstack_check(sm, BLOCK_THEAD)) {
dstack_pop(sm);
- append_block(sm, "</table>");
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ append_block(sm, "</thead>");
} else {
- append(sm, true, "[/table]");
+ append(sm, true, "[/thead]");
}
}}
- goto st299;
-tr264:
-#line 686 "ext/dtext/dtext.rl"
+ goto _again;
+f48:
+#line 691 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
+ dstack_push(sm, &BLOCK_TBODY);
+ append_block(sm, "<tbody>");
+ }}
+ goto _again;
+f45:
+#line 696 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
if (dstack_check(sm, BLOCK_TBODY)) {
dstack_pop(sm);
append_block(sm, "</tbody>");
} else {
append(sm, true, "[/tbody]");
}
}}
- goto st299;
-tr268:
-#line 672 "ext/dtext/dtext.rl"
+ goto _again;
+f50:
+#line 705 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- if (dstack_check(sm, BLOCK_THEAD)) {
- dstack_pop(sm);
- append_block(sm, "</thead>");
- } else {
- append(sm, true, "[/thead]");
- }
+ dstack_push(sm, &BLOCK_TH);
+ append_block(sm, "<th>");
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 274; goto _again;}}
}}
- goto st299;
-tr269:
-#line 706 "ext/dtext/dtext.rl"
+ goto _again;
+f52:
+#line 711 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
+ dstack_push(sm, &BLOCK_TR);
+ append_block(sm, "<tr>");
+ }}
+ goto _again;
+f47:
+#line 716 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
if (dstack_check(sm, BLOCK_TR)) {
dstack_pop(sm);
append_block(sm, "</tr>");
} else {
append(sm, true, "[/tr]");
}
}}
- goto st299;
-tr277:
-#line 681 "ext/dtext/dtext.rl"
+ goto _again;
+f49:
+#line 725 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &BLOCK_TBODY);
- append_block(sm, "<tbody>");
- }}
- goto st299;
-tr278:
-#line 715 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
dstack_push(sm, &BLOCK_TD);
append_block(sm, "<td>");
{
size_t len = sm->stack->len;
@@ -4603,18 +3217,109 @@
}
if (sm->top >= len) {
sm->stack = g_array_set_size(sm->stack, len + 16);
}
-{( ((int *)sm->stack->data))[( sm->top)++] = 299; goto st260;}}
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 274; goto _again;}}
}}
- goto st299;
-tr279:
-#line 695 "ext/dtext/dtext.rl"
+ goto _again;
+f44:
+#line 731 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &BLOCK_TH);
- append_block(sm, "<th>");
+ if (dstack_check(sm, BLOCK_TABLE)) {
+ dstack_pop(sm);
+ append_block(sm, "</table>");
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append(sm, true, "[/table]");
+ }
+ }}
+ goto _again;
+f108:
+#line 741 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ ( sm->p)--;
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f107:
+#line 746 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;}
+ goto _again;
+f109:
+#line 746 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;}
+ goto _again;
+f43:
+#line 746 "ext/dtext/dtext.rl"
+ {{( sm->p) = ((( sm->te)))-1;}}
+ goto _again;
+f111:
+#line 789 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_close_list(sm);
+ {( sm->p) = (( sm->ts))-1;}
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f110:
+#line 797 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_rewind(sm);
+ ( sm->p)--;
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f113:
+#line 797 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ dstack_rewind(sm);
+ ( sm->p)--;
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f55:
+#line 797 "ext/dtext/dtext.rl"
+ {{( sm->p) = ((( sm->te)))-1;}{
+ dstack_rewind(sm);
+ ( sm->p)--;
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }}
+ goto _again;
+f53:
+#line 1 "NONE"
+ { switch( ( sm->act) ) {
+ case 67:
+ {{( sm->p) = ((( sm->te)))-1;}
+ dstack_close_list(sm);
+ {( sm->p) = (( sm->ts))-1;}
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ }
+ break;
+ default:
+ {{( sm->p) = ((( sm->te)))-1;}}
+ break;
+ }
+ }
+ goto _again;
+f5:
+#line 868 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ g_debug("block [/spoiler]");
+ dstack_close_before_block(sm);
+ if (dstack_check(sm, BLOCK_SPOILER)) {
+ g_debug(" rewind");
+ dstack_rewind(sm);
+ }
+ }}
+ goto _again;
+f7:
+#line 915 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p)+1;{
+ dstack_close_before_block(sm);
+ dstack_push(sm, &BLOCK_TABLE);
+ append_block(sm, "<table class=\"striped\">");
{
size_t len = sm->stack->len;
if (len > MAX_STACK_DEPTH) {
free_machine(sm);
@@ -4622,317 +3327,629 @@
}
if (sm->top >= len) {
sm->stack = g_array_set_size(sm->stack, len + 16);
}
-{( ((int *)sm->stack->data))[( sm->top)++] = 299; goto st260;}}
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 313; goto _again;}}
}}
- goto st299;
-tr283:
-#line 667 "ext/dtext/dtext.rl"
+ goto _again;
+f8:
+#line 922 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &BLOCK_THEAD);
- append_block(sm, "<thead>");
+ dstack_push(sm, &BLOCK_TN);
+ append_block(sm, "<p class=\"tn\">");
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 274; goto _again;}}
}}
- goto st299;
-tr284:
-#line 701 "ext/dtext/dtext.rl"
+ goto _again;
+f59:
+#line 938 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- dstack_push(sm, &BLOCK_TR);
- append_block(sm, "<tr>");
+ g_debug("block 0");
+ g_debug(" close dstack");
+ dstack_close(sm);
}}
- goto st299;
-tr410:
-#line 736 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;}
- goto st299;
-tr411:
-#line 731 "ext/dtext/dtext.rl"
+ goto _again;
+f58:
+#line 961 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
+ g_debug("block char: %c", (*( sm->p)));
( sm->p)--;
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+
+ if (g_queue_is_empty(sm->dstack) || dstack_check(sm, BLOCK_QUOTE) || dstack_check(sm, BLOCK_SPOILER) || dstack_check(sm, BLOCK_EXPAND)) {
+ g_debug(" push p");
+ g_debug(" print <p>");
+ dstack_push(sm, &BLOCK_P);
+ append_block(sm, "<p>");
+ }
+
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 274; goto _again;}}
}}
- goto st299;
-tr413:
-#line 736 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p);( sm->p)--;}
- goto st299;
-st299:
+ goto _again;
+f70:
+#line 805 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ char header = *sm->a1;
+
+ if (sm->f_inline) {
+ header = '6';
+ }
+
+ if (!sm->f_strip) {
+ switch (header) {
+ case '1':
+ dstack_push(sm, &BLOCK_H1);
+ append_block(sm, "<h1>");
+ break;
+
+ case '2':
+ dstack_push(sm, &BLOCK_H2);
+ append_block(sm, "<h2>");
+ break;
+
+ case '3':
+ dstack_push(sm, &BLOCK_H3);
+ append_block(sm, "<h3>");
+ break;
+
+ case '4':
+ dstack_push(sm, &BLOCK_H4);
+ append_block(sm, "<h4>");
+ break;
+
+ case '5':
+ dstack_push(sm, &BLOCK_H5);
+ append_block(sm, "<h5>");
+ break;
+
+ case '6':
+ dstack_push(sm, &BLOCK_H6);
+ append_block(sm, "<h6>");
+ break;
+ }
+ }
+
+ sm->header_mode = true;
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 274; goto _again;}}
+ }}
+ goto _again;
+f68:
+#line 850 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("block [quote]");
+ g_debug(" push quote");
+ g_debug(" print <blockquote>");
+ dstack_close_before_block(sm);
+ dstack_push(sm, &BLOCK_QUOTE);
+ append_block(sm, "<blockquote>");
+ }}
+ goto _again;
+f69:
+#line 859 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("block [spoiler]");
+ g_debug(" push spoiler");
+ g_debug(" print <div>");
+ dstack_close_before_block(sm);
+ dstack_push(sm, &BLOCK_SPOILER);
+ append_block(sm, "<div class=\"spoiler\">");
+ }}
+ goto _again;
+f64:
+#line 877 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("block [code]");
+ dstack_close_before_block(sm);
+ dstack_push(sm, &BLOCK_CODE);
+ append_block(sm, "<pre>");
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 309; goto _again;}}
+ }}
+ goto _again;
+f66:
+#line 885 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("block [expand]");
+ dstack_close_before_block(sm);
+ dstack_push(sm, &BLOCK_EXPAND);
+ append_block(sm, "<div class=\"expandable\"><div class=\"expandable-header\">");
+ append_block(sm, "<input type=\"button\" value=\"Show\" class=\"expandable-button\"/></div>");
+ append_block(sm, "<div class=\"expandable-content\">");
+ }}
+ goto _again;
+f65:
+#line 894 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("block [expand=]");
+ dstack_close_before_block(sm);
+ dstack_push(sm, &BLOCK_EXPAND);
+ append_block(sm, "<div class=\"expandable\"><div class=\"expandable-header\">");
+ append(sm, true, "<span>");
+ append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
+ append(sm, true, "</span>");
+ append_block(sm, "<input type=\"button\" value=\"Show\" class=\"expandable-button\"/></div>");
+ append_block(sm, "<div class=\"expandable-content\">");
+ }}
+ goto _again;
+f67:
+#line 906 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("block [nodtext]");
+ dstack_close_before_block(sm);
+ dstack_push(sm, &BLOCK_NODTEXT);
+ dstack_push(sm, &BLOCK_P);
+ append_block(sm, "<p>");
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 311; goto _again;}}
+ }}
+ goto _again;
+f62:
+#line 961 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("block char: %c", (*( sm->p)));
+ ( sm->p)--;
+
+ if (g_queue_is_empty(sm->dstack) || dstack_check(sm, BLOCK_QUOTE) || dstack_check(sm, BLOCK_SPOILER) || dstack_check(sm, BLOCK_EXPAND)) {
+ g_debug(" push p");
+ g_debug(" print <p>");
+ dstack_push(sm, &BLOCK_P);
+ append_block(sm, "<p>");
+ }
+
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 274; goto _again;}}
+ }}
+ goto _again;
+f2:
+#line 961 "ext/dtext/dtext.rl"
+ {{( sm->p) = ((( sm->te)))-1;}{
+ g_debug("block char: %c", (*( sm->p)));
+ ( sm->p)--;
+
+ if (g_queue_is_empty(sm->dstack) || dstack_check(sm, BLOCK_QUOTE) || dstack_check(sm, BLOCK_SPOILER) || dstack_check(sm, BLOCK_EXPAND)) {
+ g_debug(" push p");
+ g_debug(" print <p>");
+ dstack_push(sm, &BLOCK_P);
+ append_block(sm, "<p>");
+ }
+
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 274; goto _again;}}
+ }}
+ goto _again;
+f0:
#line 1 "NONE"
- {( sm->ts) = 0;}
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof299;
-case 299:
-#line 1 "NONE"
- {( sm->ts) = ( sm->p);}
-#line 4668 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 0: goto tr411;
- case 91: goto tr412;
+ { switch( ( sm->act) ) {
+ case 82:
+ {{( sm->p) = ((( sm->te)))-1;}
+ g_debug("block newline2");
+
+ if (sm->header_mode) {
+ sm->header_mode = false;
+ dstack_rewind(sm);
+ } else if (sm->list_mode) {
+ dstack_close_list(sm);
+ } else {
+ dstack_close_before_block(sm);
+ }
+ }
+ break;
+ case 83:
+ {{( sm->p) = ((( sm->te)))-1;}
+ g_debug("block newline");
+ }
+ break;
}
- goto tr410;
-tr412:
-#line 1 "NONE"
- {( sm->te) = ( sm->p)+1;}
- goto st300;
-st300:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof300;
-case 300:
-#line 4682 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 47: goto st216;
- case 116: goto st231;
}
- goto tr413;
-st216:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof216;
-case 216:
- if ( (*( sm->p)) == 116 )
- goto st217;
- goto tr251;
-st217:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof217;
-case 217:
- switch( (*( sm->p)) ) {
- case 97: goto st218;
- case 98: goto st222;
- case 104: goto st226;
- case 114: goto st230;
- }
- goto tr251;
-st218:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof218;
-case 218:
- if ( (*( sm->p)) == 98 )
- goto st219;
- goto tr251;
-st219:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof219;
-case 219:
- if ( (*( sm->p)) == 108 )
- goto st220;
- goto tr251;
-st220:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof220;
-case 220:
- if ( (*( sm->p)) == 101 )
- goto st221;
- goto tr251;
-st221:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof221;
-case 221:
- if ( (*( sm->p)) == 93 )
- goto tr260;
- goto tr251;
-st222:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof222;
-case 222:
- if ( (*( sm->p)) == 111 )
- goto st223;
- goto tr251;
-st223:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof223;
-case 223:
- if ( (*( sm->p)) == 100 )
- goto st224;
- goto tr251;
-st224:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof224;
-case 224:
- if ( (*( sm->p)) == 121 )
- goto st225;
- goto tr251;
-st225:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof225;
-case 225:
- if ( (*( sm->p)) == 93 )
- goto tr264;
- goto tr251;
-st226:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof226;
-case 226:
- if ( (*( sm->p)) == 101 )
- goto st227;
- goto tr251;
-st227:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof227;
-case 227:
- if ( (*( sm->p)) == 97 )
- goto st228;
- goto tr251;
-st228:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof228;
-case 228:
- if ( (*( sm->p)) == 100 )
- goto st229;
- goto tr251;
-st229:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof229;
-case 229:
- if ( (*( sm->p)) == 93 )
- goto tr268;
- goto tr251;
-st230:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof230;
-case 230:
- if ( (*( sm->p)) == 93 )
- goto tr269;
- goto tr251;
-st231:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof231;
-case 231:
- switch( (*( sm->p)) ) {
- case 98: goto st232;
- case 100: goto st236;
- case 104: goto st237;
- case 114: goto st241;
- }
- goto tr251;
-st232:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof232;
-case 232:
- if ( (*( sm->p)) == 111 )
- goto st233;
- goto tr251;
-st233:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof233;
-case 233:
- if ( (*( sm->p)) == 100 )
- goto st234;
- goto tr251;
-st234:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof234;
-case 234:
- if ( (*( sm->p)) == 121 )
- goto st235;
- goto tr251;
-st235:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof235;
-case 235:
- if ( (*( sm->p)) == 93 )
- goto tr277;
- goto tr251;
-st236:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof236;
-case 236:
- if ( (*( sm->p)) == 93 )
- goto tr278;
- goto tr251;
-st237:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof237;
-case 237:
- switch( (*( sm->p)) ) {
- case 93: goto tr279;
- case 101: goto st238;
- }
- goto tr251;
-st238:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof238;
-case 238:
- if ( (*( sm->p)) == 97 )
- goto st239;
- goto tr251;
-st239:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof239;
-case 239:
- if ( (*( sm->p)) == 100 )
- goto st240;
- goto tr251;
-st240:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof240;
-case 240:
- if ( (*( sm->p)) == 93 )
- goto tr283;
- goto tr251;
-st241:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof241;
-case 241:
- if ( (*( sm->p)) == 93 )
- goto tr284;
- goto tr251;
-tr285:
+ goto _again;
+f94:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 162 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"/posts/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "post #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f89:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 171 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"/forum_posts/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "forum #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f95:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 180 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"/forum_topics/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "topic #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f88:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 202 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"/comments/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "comment #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f93:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 211 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"/pools/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "pool #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f97:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 220 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"/users/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "user #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f87:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 229 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"/artists/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "artist #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f90:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 238 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"https://github.com/r888888888/danbooru/issues/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "issue #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f91:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 247 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"http://www.pixiv.net/member_illust.php?mode=medium&illust_id=");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "pixiv #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+ }}
+ goto _again;
+f83:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
+#line 372 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ if (is_boundary_c((*( sm->p)))) {
+ sm->b = true;
+ sm->d = 2;
+ } else {
+ sm->b = false;
+ sm->d = 1;
+ }
+
+ append(sm, true, "<a rel=\"nofollow\" href=\"/users?name=");
+ append_segment_uri_escaped(sm, sm->a1, sm->a2 - sm->d);
+ append(sm, true, "\">");
+ append_c(sm, '@');
+ append_segment_html_escaped(sm, sm->a1, sm->a2 - sm->d);
+ append(sm, true, "</a>");
+
+ if (sm->b) {
+ append_c_html_escaped(sm, (*( sm->p)));
+ }
+ }}
+ goto _again;
+f86:
+#line 100 "ext/dtext/dtext.rl"
+ {
+ sm->a2 = sm->p;
+}
#line 1 "NONE"
{ switch( ( sm->act) ) {
- case 64:
+ case 21:
{{( sm->p) = ((( sm->te)))-1;}
- dstack_close_list(sm);
+ append_segment_html_escaped(sm, sm->ts, sm->te - 1);
+ }
+ break;
+ case 22:
+ {{( sm->p) = ((( sm->te)))-1;}
+ if (is_boundary_c((*( sm->p)))) {
+ sm->b = true;
+ sm->d = 2;
+ } else {
+ sm->b = false;
+ sm->d = 1;
+ }
+
+ append(sm, true, "<a rel=\"nofollow\" href=\"/users?name=");
+ append_segment_uri_escaped(sm, sm->a1, sm->a2 - sm->d);
+ append(sm, true, "\">");
+ append_c(sm, '@');
+ append_segment_html_escaped(sm, sm->a1, sm->a2 - sm->d);
+ append(sm, true, "</a>");
+
+ if (sm->b) {
+ append_c_html_escaped(sm, (*( sm->p)));
+ }
+ }
+ break;
+ case 45:
+ {{( sm->p) = ((( sm->te)))-1;}
+ g_debug("inline newline2");
+ g_debug(" return");
+
+ if (sm->list_mode) {
+ dstack_close_list(sm);
+ }
+
{( sm->p) = (( sm->ts))-1;}
{ sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
}
break;
- default:
- {{( sm->p) = ((( sm->te)))-1;}}
+ case 46:
+ {{( sm->p) = ((( sm->te)))-1;}
+ g_debug("inline newline");
+
+ if (sm->header_mode) {
+ sm->header_mode = false;
+ dstack_rewind(sm);
+ { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ } else {
+ append(sm, true, "<br>");
+ }
+ }
break;
}
}
- goto st301;
-tr287:
-#line 787 "ext/dtext/dtext.rl"
- {{( sm->p) = ((( sm->te)))-1;}{
- dstack_rewind(sm);
- ( sm->p)--;
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
- }}
- goto st301;
-tr416:
-#line 787 "ext/dtext/dtext.rl"
+ goto _again;
+f13:
+#line 108 "ext/dtext/dtext.rl"
+ {
+ sm->b2 = sm->p;
+}
+#line 339 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p)+1;{
- dstack_rewind(sm);
- ( sm->p)--;
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ append(sm, true, "<a href=\"");
+ append_segment_html_escaped(sm, sm->b1, sm->b2 - 1);
+ append(sm, true, "\">");
+ append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
}}
- goto st301;
-tr417:
-#line 779 "ext/dtext/dtext.rl"
- {( sm->te) = ( sm->p)+1;{
- dstack_close_list(sm);
- {( sm->p) = (( sm->ts))-1;}
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ goto _again;
+f96:
+#line 108 "ext/dtext/dtext.rl"
+ {
+ sm->b2 = sm->p;
+}
+#line 189 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ append(sm, true, "<a href=\"/forum_topics/");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "?page=");
+ append_segment(sm, true, sm->b1, sm->b2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "topic #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, false, "/p");
+ append_segment(sm, false, sm->b1, sm->b2 - 1);
+ append(sm, true, "</a>");
}}
- goto st301;
-tr422:
-#line 787 "ext/dtext/dtext.rl"
+ goto _again;
+f92:
+#line 108 "ext/dtext/dtext.rl"
+ {
+ sm->b2 = sm->p;
+}
+#line 256 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p);( sm->p)--;{
- dstack_rewind(sm);
- ( sm->p)--;
- { sm->cs = ( ((int *)sm->stack->data))[--( sm->top)];goto _again;}
+ append(sm, true, "<a href=\"http://www.pixiv.net/member_illust.php?mode=manga_big&illust_id=");
+ append_segment(sm, true, sm->a1, sm->a2 - 1);
+ append(sm, true, "&page=");
+ append_segment(sm, true, sm->b1, sm->b2 - 1);
+ append(sm, true, "\">");
+ append(sm, false, "pixiv #");
+ append_segment(sm, false, sm->a1, sm->a2 - 1);
+ append(sm, false, "/p");
+ append_segment(sm, false, sm->b1, sm->b2 - 1);
+ append(sm, true, "</a>");
}}
- goto st301;
-tr423:
+ goto _again;
+f82:
#line 108 "ext/dtext/dtext.rl"
{
sm->b2 = sm->p;
}
-#line 740 "ext/dtext/dtext.rl"
+#line 319 "ext/dtext/dtext.rl"
{( sm->te) = ( sm->p);( sm->p)--;{
+ if (is_boundary_c((*( sm->p)))) {
+ sm->d = 2;
+ sm->b = true;
+ } else {
+ sm->d = 1;
+ sm->b = false;
+ }
+
+ append(sm, true, "<a href=\"");
+ append_segment_html_escaped(sm, sm->b1, sm->b2 - sm->d);
+ append(sm, true, "\">");
+ append_segment_html_escaped(sm, sm->a1, sm->a2 - 1);
+ append(sm, true, "</a>");
+
+ if (sm->b) {
+ append_c_html_escaped(sm, (*( sm->p)));
+ }
+ }}
+ goto _again;
+f79:
+#line 108 "ext/dtext/dtext.rl"
+ {
+ sm->b2 = sm->p;
+}
+#line 393 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("inline list");
+
+ if (dstack_check(sm, BLOCK_LI)) {
+ g_debug(" rewind li");
+ dstack_rewind(sm);
+ } else if (dstack_check(sm, BLOCK_P)) {
+ g_debug(" rewind p");
+ dstack_rewind(sm);
+ } else if (sm->header_mode) {
+ g_debug(" rewind header");
+ dstack_rewind(sm);
+ }
+
+ g_debug(" next list");
+ {( sm->p) = (( sm->ts + 1))-1;}
+ sm->cs = 315;
+ }}
+ goto _again;
+f114:
+#line 108 "ext/dtext/dtext.rl"
+ {
+ sm->b2 = sm->p;
+}
+#line 750 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
int prev_nest = sm->list_nest;
append_closing_p_if(sm);
g_debug("list start");
sm->list_mode = true;
sm->list_nest = sm->a2 - sm->a1;
@@ -4974,472 +3991,123 @@
}
if (sm->top >= len) {
sm->stack = g_array_set_size(sm->stack, len + 16);
}
-{( ((int *)sm->stack->data))[( sm->top)++] = 301; goto st260;}}
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 274; goto _again;}}
}}
- goto st301;
-st301:
+ goto _again;
+f63:
+#line 108 "ext/dtext/dtext.rl"
+ {
+ sm->b2 = sm->p;
+}
+#line 928 "ext/dtext/dtext.rl"
+ {( sm->te) = ( sm->p);( sm->p)--;{
+ g_debug("block list");
+ g_debug(" call list");
+ sm->list_nest = 0;
+ sm->list_mode = true;
+ append_closing_p_if(sm);
+ {( sm->p) = (( sm->ts))-1;}
+ {
+ size_t len = sm->stack->len;
+
+ if (len > MAX_STACK_DEPTH) {
+ free_machine(sm);
+ rb_raise(rb_eSyntaxError, "too many nested elements");
+ }
+
+ if (sm->top >= len) {
+ sm->stack = g_array_set_size(sm->stack, len + 16);
+ }
+{( ((int *)sm->stack->data))[( sm->top)++] = sm->cs; sm->cs = 315; goto _again;}}
+ }}
+ goto _again;
+f14:
#line 1 "NONE"
- {( sm->ts) = 0;}
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof301;
-case 301:
+ {( sm->te) = ( sm->p)+1;}
+#line 96 "ext/dtext/dtext.rl"
+ {
+ sm->a1 = sm->p;
+}
+ goto _again;
+f85:
#line 1 "NONE"
- {( sm->ts) = ( sm->p);}
-#line 4991 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 0: goto tr417;
- case 10: goto tr418;
- case 13: goto st303;
- case 42: goto tr420;
- }
- goto tr416;
-tr286:
+ {( sm->te) = ( sm->p)+1;}
+#line 368 "ext/dtext/dtext.rl"
+ {( sm->act) = 21;}
+ goto _again;
+f84:
#line 1 "NONE"
{( sm->te) = ( sm->p)+1;}
-#line 779 "ext/dtext/dtext.rl"
- {( sm->act) = 64;}
- goto st302;
-tr418:
+#line 372 "ext/dtext/dtext.rl"
+ {( sm->act) = 22;}
+ goto _again;
+f10:
#line 1 "NONE"
{( sm->te) = ( sm->p)+1;}
-#line 785 "ext/dtext/dtext.rl"
- {( sm->act) = 65;}
- goto st302;
-st302:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof302;
-case 302:
-#line 5015 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 10: goto tr286;
- case 13: goto st242;
- }
- goto tr285;
-st242:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof242;
-case 242:
- if ( (*( sm->p)) == 10 )
- goto tr286;
- goto tr285;
-st303:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof303;
-case 303:
- if ( (*( sm->p)) == 10 )
- goto tr418;
- goto tr422;
-tr420:
+#line 598 "ext/dtext/dtext.rl"
+ {( sm->act) = 45;}
+ goto _again;
+f76:
#line 1 "NONE"
{( sm->te) = ( sm->p)+1;}
-#line 96 "ext/dtext/dtext.rl"
- {
- sm->a1 = sm->p;
-}
- goto st304;
-st304:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof304;
-case 304:
-#line 5047 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 9: goto tr290;
- case 32: goto tr290;
- case 42: goto st244;
+#line 610 "ext/dtext/dtext.rl"
+ {( sm->act) = 46;}
+ goto _again;
+f54:
+#line 1 "NONE"
+ {( sm->te) = ( sm->p)+1;}
+#line 789 "ext/dtext/dtext.rl"
+ {( sm->act) = 67;}
+ goto _again;
+f112:
+#line 1 "NONE"
+ {( sm->te) = ( sm->p)+1;}
+#line 795 "ext/dtext/dtext.rl"
+ {( sm->act) = 68;}
+ goto _again;
+f1:
+#line 1 "NONE"
+ {( sm->te) = ( sm->p)+1;}
+#line 944 "ext/dtext/dtext.rl"
+ {( sm->act) = 82;}
+ goto _again;
+f60:
+#line 1 "NONE"
+ {( sm->te) = ( sm->p)+1;}
+#line 957 "ext/dtext/dtext.rl"
+ {( sm->act) = 83;}
+ goto _again;
+
+_again:
+ switch ( _dtext_to_state_actions[ sm->cs] ) {
+ case 57:
+#line 1 "NONE"
+ {( sm->ts) = 0;}
+ break;
+#line 4090 "ext/dtext/dtext.c"
}
- goto tr422;
-tr290:
-#line 100 "ext/dtext/dtext.rl"
- {
- sm->a2 = sm->p;
-}
- goto st243;
-st243:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof243;
-case 243:
-#line 5064 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 0: goto tr287;
- case 9: goto tr289;
- case 10: goto tr287;
- case 13: goto tr287;
- case 32: goto tr289;
- }
- goto tr288;
-tr288:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st305;
-st305:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof305;
-case 305:
-#line 5083 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 0: goto tr423;
- case 10: goto tr423;
- case 13: goto tr423;
- }
- goto st305;
-tr289:
-#line 104 "ext/dtext/dtext.rl"
- {
- sm->b1 = sm->p;
-}
- goto st306;
-st306:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof306;
-case 306:
-#line 5100 "ext/dtext/dtext.c"
- switch( (*( sm->p)) ) {
- case 0: goto tr423;
- case 9: goto tr289;
- case 10: goto tr423;
- case 13: goto tr423;
- case 32: goto tr289;
- }
- goto tr288;
-st244:
- if ( ++( sm->p) == ( sm->pe) )
- goto _test_eof244;
-case 244:
- switch( (*( sm->p)) ) {
- case 9: goto tr290;
- case 32: goto tr290;
- case 42: goto st244;
- }
- goto tr287;
- }
- _test_eof245: sm->cs = 245; goto _test_eof;
- _test_eof246: sm->cs = 246; goto _test_eof;
- _test_eof0: sm->cs = 0; goto _test_eof;
- _test_eof247: sm->cs = 247; goto _test_eof;
- _test_eof248: sm->cs = 248; goto _test_eof;
- _test_eof1: sm->cs = 1; goto _test_eof;
- _test_eof249: sm->cs = 249; goto _test_eof;
- _test_eof250: sm->cs = 250; goto _test_eof;
- _test_eof2: sm->cs = 2; goto _test_eof;
- _test_eof251: sm->cs = 251; goto _test_eof;
- _test_eof3: sm->cs = 3; goto _test_eof;
- _test_eof4: sm->cs = 4; goto _test_eof;
- _test_eof5: sm->cs = 5; goto _test_eof;
- _test_eof6: sm->cs = 6; goto _test_eof;
- _test_eof7: sm->cs = 7; goto _test_eof;
- _test_eof8: sm->cs = 8; goto _test_eof;
- _test_eof9: sm->cs = 9; goto _test_eof;
- _test_eof10: sm->cs = 10; goto _test_eof;
- _test_eof11: sm->cs = 11; goto _test_eof;
- _test_eof12: sm->cs = 12; goto _test_eof;
- _test_eof13: sm->cs = 13; goto _test_eof;
- _test_eof14: sm->cs = 14; goto _test_eof;
- _test_eof252: sm->cs = 252; goto _test_eof;
- _test_eof15: sm->cs = 15; goto _test_eof;
- _test_eof16: sm->cs = 16; goto _test_eof;
- _test_eof17: sm->cs = 17; goto _test_eof;
- _test_eof18: sm->cs = 18; goto _test_eof;
- _test_eof19: sm->cs = 19; goto _test_eof;
- _test_eof20: sm->cs = 20; goto _test_eof;
- _test_eof21: sm->cs = 21; goto _test_eof;
- _test_eof22: sm->cs = 22; goto _test_eof;
- _test_eof253: sm->cs = 253; goto _test_eof;
- _test_eof254: sm->cs = 254; goto _test_eof;
- _test_eof23: sm->cs = 23; goto _test_eof;
- _test_eof24: sm->cs = 24; goto _test_eof;
- _test_eof25: sm->cs = 25; goto _test_eof;
- _test_eof26: sm->cs = 26; goto _test_eof;
- _test_eof27: sm->cs = 27; goto _test_eof;
- _test_eof28: sm->cs = 28; goto _test_eof;
- _test_eof29: sm->cs = 29; goto _test_eof;
- _test_eof255: sm->cs = 255; goto _test_eof;
- _test_eof30: sm->cs = 30; goto _test_eof;
- _test_eof31: sm->cs = 31; goto _test_eof;
- _test_eof32: sm->cs = 32; goto _test_eof;
- _test_eof33: sm->cs = 33; goto _test_eof;
- _test_eof34: sm->cs = 34; goto _test_eof;
- _test_eof256: sm->cs = 256; goto _test_eof;
- _test_eof35: sm->cs = 35; goto _test_eof;
- _test_eof36: sm->cs = 36; goto _test_eof;
- _test_eof37: sm->cs = 37; goto _test_eof;
- _test_eof38: sm->cs = 38; goto _test_eof;
- _test_eof39: sm->cs = 39; goto _test_eof;
- _test_eof40: sm->cs = 40; goto _test_eof;
- _test_eof41: sm->cs = 41; goto _test_eof;
- _test_eof257: sm->cs = 257; goto _test_eof;
- _test_eof42: sm->cs = 42; goto _test_eof;
- _test_eof43: sm->cs = 43; goto _test_eof;
- _test_eof44: sm->cs = 44; goto _test_eof;
- _test_eof45: sm->cs = 45; goto _test_eof;
- _test_eof46: sm->cs = 46; goto _test_eof;
- _test_eof47: sm->cs = 47; goto _test_eof;
- _test_eof258: sm->cs = 258; goto _test_eof;
- _test_eof48: sm->cs = 48; goto _test_eof;
- _test_eof259: sm->cs = 259; goto _test_eof;
- _test_eof260: sm->cs = 260; goto _test_eof;
- _test_eof261: sm->cs = 261; goto _test_eof;
- _test_eof262: sm->cs = 262; goto _test_eof;
- _test_eof49: sm->cs = 49; goto _test_eof;
- _test_eof50: sm->cs = 50; goto _test_eof;
- _test_eof51: sm->cs = 51; goto _test_eof;
- _test_eof263: sm->cs = 263; goto _test_eof;
- _test_eof264: sm->cs = 264; goto _test_eof;
- _test_eof265: sm->cs = 265; goto _test_eof;
- _test_eof266: sm->cs = 266; goto _test_eof;
- _test_eof52: sm->cs = 52; goto _test_eof;
- _test_eof53: sm->cs = 53; goto _test_eof;
- _test_eof54: sm->cs = 54; goto _test_eof;
- _test_eof55: sm->cs = 55; goto _test_eof;
- _test_eof267: sm->cs = 267; goto _test_eof;
- _test_eof56: sm->cs = 56; goto _test_eof;
- _test_eof57: sm->cs = 57; goto _test_eof;
- _test_eof58: sm->cs = 58; goto _test_eof;
- _test_eof59: sm->cs = 59; goto _test_eof;
- _test_eof60: sm->cs = 60; goto _test_eof;
- _test_eof61: sm->cs = 61; goto _test_eof;
- _test_eof62: sm->cs = 62; goto _test_eof;
- _test_eof63: sm->cs = 63; goto _test_eof;
- _test_eof64: sm->cs = 64; goto _test_eof;
- _test_eof65: sm->cs = 65; goto _test_eof;
- _test_eof66: sm->cs = 66; goto _test_eof;
- _test_eof67: sm->cs = 67; goto _test_eof;
- _test_eof68: sm->cs = 68; goto _test_eof;
- _test_eof69: sm->cs = 69; goto _test_eof;
- _test_eof70: sm->cs = 70; goto _test_eof;
- _test_eof71: sm->cs = 71; goto _test_eof;
- _test_eof72: sm->cs = 72; goto _test_eof;
- _test_eof268: sm->cs = 268; goto _test_eof;
- _test_eof269: sm->cs = 269; goto _test_eof;
- _test_eof270: sm->cs = 270; goto _test_eof;
- _test_eof271: sm->cs = 271; goto _test_eof;
- _test_eof73: sm->cs = 73; goto _test_eof;
- _test_eof74: sm->cs = 74; goto _test_eof;
- _test_eof75: sm->cs = 75; goto _test_eof;
- _test_eof76: sm->cs = 76; goto _test_eof;
- _test_eof77: sm->cs = 77; goto _test_eof;
- _test_eof78: sm->cs = 78; goto _test_eof;
- _test_eof79: sm->cs = 79; goto _test_eof;
- _test_eof272: sm->cs = 272; goto _test_eof;
- _test_eof273: sm->cs = 273; goto _test_eof;
- _test_eof80: sm->cs = 80; goto _test_eof;
- _test_eof81: sm->cs = 81; goto _test_eof;
- _test_eof82: sm->cs = 82; goto _test_eof;
- _test_eof83: sm->cs = 83; goto _test_eof;
- _test_eof84: sm->cs = 84; goto _test_eof;
- _test_eof85: sm->cs = 85; goto _test_eof;
- _test_eof86: sm->cs = 86; goto _test_eof;
- _test_eof87: sm->cs = 87; goto _test_eof;
- _test_eof274: sm->cs = 274; goto _test_eof;
- _test_eof275: sm->cs = 275; goto _test_eof;
- _test_eof88: sm->cs = 88; goto _test_eof;
- _test_eof89: sm->cs = 89; goto _test_eof;
- _test_eof90: sm->cs = 90; goto _test_eof;
- _test_eof91: sm->cs = 91; goto _test_eof;
- _test_eof92: sm->cs = 92; goto _test_eof;
- _test_eof93: sm->cs = 93; goto _test_eof;
- _test_eof276: sm->cs = 276; goto _test_eof;
- _test_eof277: sm->cs = 277; goto _test_eof;
- _test_eof94: sm->cs = 94; goto _test_eof;
- _test_eof95: sm->cs = 95; goto _test_eof;
- _test_eof96: sm->cs = 96; goto _test_eof;
- _test_eof97: sm->cs = 97; goto _test_eof;
- _test_eof98: sm->cs = 98; goto _test_eof;
- _test_eof99: sm->cs = 99; goto _test_eof;
- _test_eof278: sm->cs = 278; goto _test_eof;
- _test_eof279: sm->cs = 279; goto _test_eof;
- _test_eof100: sm->cs = 100; goto _test_eof;
- _test_eof101: sm->cs = 101; goto _test_eof;
- _test_eof102: sm->cs = 102; goto _test_eof;
- _test_eof103: sm->cs = 103; goto _test_eof;
- _test_eof104: sm->cs = 104; goto _test_eof;
- _test_eof105: sm->cs = 105; goto _test_eof;
- _test_eof280: sm->cs = 280; goto _test_eof;
- _test_eof106: sm->cs = 106; goto _test_eof;
- _test_eof107: sm->cs = 107; goto _test_eof;
- _test_eof281: sm->cs = 281; goto _test_eof;
- _test_eof108: sm->cs = 108; goto _test_eof;
- _test_eof109: sm->cs = 109; goto _test_eof;
- _test_eof110: sm->cs = 110; goto _test_eof;
- _test_eof111: sm->cs = 111; goto _test_eof;
- _test_eof112: sm->cs = 112; goto _test_eof;
- _test_eof282: sm->cs = 282; goto _test_eof;
- _test_eof113: sm->cs = 113; goto _test_eof;
- _test_eof114: sm->cs = 114; goto _test_eof;
- _test_eof115: sm->cs = 115; goto _test_eof;
- _test_eof116: sm->cs = 116; goto _test_eof;
- _test_eof283: sm->cs = 283; goto _test_eof;
- _test_eof284: sm->cs = 284; goto _test_eof;
- _test_eof117: sm->cs = 117; goto _test_eof;
- _test_eof118: sm->cs = 118; goto _test_eof;
- _test_eof119: sm->cs = 119; goto _test_eof;
- _test_eof120: sm->cs = 120; goto _test_eof;
- _test_eof121: sm->cs = 121; goto _test_eof;
- _test_eof122: sm->cs = 122; goto _test_eof;
- _test_eof285: sm->cs = 285; goto _test_eof;
- _test_eof123: sm->cs = 123; goto _test_eof;
- _test_eof124: sm->cs = 124; goto _test_eof;
- _test_eof286: sm->cs = 286; goto _test_eof;
- _test_eof287: sm->cs = 287; goto _test_eof;
- _test_eof125: sm->cs = 125; goto _test_eof;
- _test_eof126: sm->cs = 126; goto _test_eof;
- _test_eof127: sm->cs = 127; goto _test_eof;
- _test_eof128: sm->cs = 128; goto _test_eof;
- _test_eof129: sm->cs = 129; goto _test_eof;
- _test_eof288: sm->cs = 288; goto _test_eof;
- _test_eof289: sm->cs = 289; goto _test_eof;
- _test_eof130: sm->cs = 130; goto _test_eof;
- _test_eof131: sm->cs = 131; goto _test_eof;
- _test_eof132: sm->cs = 132; goto _test_eof;
- _test_eof133: sm->cs = 133; goto _test_eof;
- _test_eof134: sm->cs = 134; goto _test_eof;
- _test_eof135: sm->cs = 135; goto _test_eof;
- _test_eof136: sm->cs = 136; goto _test_eof;
- _test_eof137: sm->cs = 137; goto _test_eof;
- _test_eof138: sm->cs = 138; goto _test_eof;
- _test_eof139: sm->cs = 139; goto _test_eof;
- _test_eof140: sm->cs = 140; goto _test_eof;
- _test_eof141: sm->cs = 141; goto _test_eof;
- _test_eof142: sm->cs = 142; goto _test_eof;
- _test_eof143: sm->cs = 143; goto _test_eof;
- _test_eof290: sm->cs = 290; goto _test_eof;
- _test_eof144: sm->cs = 144; goto _test_eof;
- _test_eof145: sm->cs = 145; goto _test_eof;
- _test_eof146: sm->cs = 146; goto _test_eof;
- _test_eof147: sm->cs = 147; goto _test_eof;
- _test_eof148: sm->cs = 148; goto _test_eof;
- _test_eof149: sm->cs = 149; goto _test_eof;
- _test_eof150: sm->cs = 150; goto _test_eof;
- _test_eof151: sm->cs = 151; goto _test_eof;
- _test_eof152: sm->cs = 152; goto _test_eof;
- _test_eof153: sm->cs = 153; goto _test_eof;
- _test_eof154: sm->cs = 154; goto _test_eof;
- _test_eof155: sm->cs = 155; goto _test_eof;
- _test_eof156: sm->cs = 156; goto _test_eof;
- _test_eof157: sm->cs = 157; goto _test_eof;
- _test_eof158: sm->cs = 158; goto _test_eof;
- _test_eof159: sm->cs = 159; goto _test_eof;
- _test_eof160: sm->cs = 160; goto _test_eof;
- _test_eof161: sm->cs = 161; goto _test_eof;
- _test_eof162: sm->cs = 162; goto _test_eof;
- _test_eof163: sm->cs = 163; goto _test_eof;
- _test_eof164: sm->cs = 164; goto _test_eof;
- _test_eof165: sm->cs = 165; goto _test_eof;
- _test_eof166: sm->cs = 166; goto _test_eof;
- _test_eof167: sm->cs = 167; goto _test_eof;
- _test_eof168: sm->cs = 168; goto _test_eof;
- _test_eof169: sm->cs = 169; goto _test_eof;
- _test_eof170: sm->cs = 170; goto _test_eof;
- _test_eof171: sm->cs = 171; goto _test_eof;
- _test_eof172: sm->cs = 172; goto _test_eof;
- _test_eof173: sm->cs = 173; goto _test_eof;
- _test_eof174: sm->cs = 174; goto _test_eof;
- _test_eof175: sm->cs = 175; goto _test_eof;
- _test_eof176: sm->cs = 176; goto _test_eof;
- _test_eof177: sm->cs = 177; goto _test_eof;
- _test_eof178: sm->cs = 178; goto _test_eof;
- _test_eof179: sm->cs = 179; goto _test_eof;
- _test_eof180: sm->cs = 180; goto _test_eof;
- _test_eof181: sm->cs = 181; goto _test_eof;
- _test_eof182: sm->cs = 182; goto _test_eof;
- _test_eof183: sm->cs = 183; goto _test_eof;
- _test_eof184: sm->cs = 184; goto _test_eof;
- _test_eof185: sm->cs = 185; goto _test_eof;
- _test_eof186: sm->cs = 186; goto _test_eof;
- _test_eof187: sm->cs = 187; goto _test_eof;
- _test_eof188: sm->cs = 188; goto _test_eof;
- _test_eof189: sm->cs = 189; goto _test_eof;
- _test_eof190: sm->cs = 190; goto _test_eof;
- _test_eof191: sm->cs = 191; goto _test_eof;
- _test_eof291: sm->cs = 291; goto _test_eof;
- _test_eof192: sm->cs = 192; goto _test_eof;
- _test_eof292: sm->cs = 292; goto _test_eof;
- _test_eof193: sm->cs = 193; goto _test_eof;
- _test_eof194: sm->cs = 194; goto _test_eof;
- _test_eof195: sm->cs = 195; goto _test_eof;
- _test_eof196: sm->cs = 196; goto _test_eof;
- _test_eof197: sm->cs = 197; goto _test_eof;
- _test_eof198: sm->cs = 198; goto _test_eof;
- _test_eof293: sm->cs = 293; goto _test_eof;
- _test_eof199: sm->cs = 199; goto _test_eof;
- _test_eof294: sm->cs = 294; goto _test_eof;
- _test_eof200: sm->cs = 200; goto _test_eof;
- _test_eof201: sm->cs = 201; goto _test_eof;
- _test_eof202: sm->cs = 202; goto _test_eof;
- _test_eof295: sm->cs = 295; goto _test_eof;
- _test_eof296: sm->cs = 296; goto _test_eof;
- _test_eof203: sm->cs = 203; goto _test_eof;
- _test_eof204: sm->cs = 204; goto _test_eof;
- _test_eof205: sm->cs = 205; goto _test_eof;
- _test_eof206: sm->cs = 206; goto _test_eof;
- _test_eof207: sm->cs = 207; goto _test_eof;
- _test_eof297: sm->cs = 297; goto _test_eof;
- _test_eof298: sm->cs = 298; goto _test_eof;
- _test_eof208: sm->cs = 208; goto _test_eof;
- _test_eof209: sm->cs = 209; goto _test_eof;
- _test_eof210: sm->cs = 210; goto _test_eof;
- _test_eof211: sm->cs = 211; goto _test_eof;
- _test_eof212: sm->cs = 212; goto _test_eof;
- _test_eof213: sm->cs = 213; goto _test_eof;
- _test_eof214: sm->cs = 214; goto _test_eof;
- _test_eof215: sm->cs = 215; goto _test_eof;
- _test_eof299: sm->cs = 299; goto _test_eof;
- _test_eof300: sm->cs = 300; goto _test_eof;
- _test_eof216: sm->cs = 216; goto _test_eof;
- _test_eof217: sm->cs = 217; goto _test_eof;
- _test_eof218: sm->cs = 218; goto _test_eof;
- _test_eof219: sm->cs = 219; goto _test_eof;
- _test_eof220: sm->cs = 220; goto _test_eof;
- _test_eof221: sm->cs = 221; goto _test_eof;
- _test_eof222: sm->cs = 222; goto _test_eof;
- _test_eof223: sm->cs = 223; goto _test_eof;
- _test_eof224: sm->cs = 224; goto _test_eof;
- _test_eof225: sm->cs = 225; goto _test_eof;
- _test_eof226: sm->cs = 226; goto _test_eof;
- _test_eof227: sm->cs = 227; goto _test_eof;
- _test_eof228: sm->cs = 228; goto _test_eof;
- _test_eof229: sm->cs = 229; goto _test_eof;
- _test_eof230: sm->cs = 230; goto _test_eof;
- _test_eof231: sm->cs = 231; goto _test_eof;
- _test_eof232: sm->cs = 232; goto _test_eof;
- _test_eof233: sm->cs = 233; goto _test_eof;
- _test_eof234: sm->cs = 234; goto _test_eof;
- _test_eof235: sm->cs = 235; goto _test_eof;
- _test_eof236: sm->cs = 236; goto _test_eof;
- _test_eof237: sm->cs = 237; goto _test_eof;
- _test_eof238: sm->cs = 238; goto _test_eof;
- _test_eof239: sm->cs = 239; goto _test_eof;
- _test_eof240: sm->cs = 240; goto _test_eof;
- _test_eof241: sm->cs = 241; goto _test_eof;
- _test_eof301: sm->cs = 301; goto _test_eof;
- _test_eof302: sm->cs = 302; goto _test_eof;
- _test_eof242: sm->cs = 242; goto _test_eof;
- _test_eof303: sm->cs = 303; goto _test_eof;
- _test_eof304: sm->cs = 304; goto _test_eof;
- _test_eof243: sm->cs = 243; goto _test_eof;
- _test_eof305: sm->cs = 305; goto _test_eof;
- _test_eof306: sm->cs = 306; goto _test_eof;
- _test_eof244: sm->cs = 244; goto _test_eof;
+ if ( sm->cs == 0 )
+ goto _out;
+ if ( ++( sm->p) != ( sm->pe) )
+ goto _resume;
_test_eof: {}
if ( ( sm->p) == ( sm->eof) )
{
switch ( sm->cs ) {
- case 246: goto tr0;
- case 0: goto tr0;
- case 247: goto tr300;
- case 248: goto tr300;
- case 1: goto tr2;
- case 249: goto tr301;
- case 250: goto tr301;
+ case 257: goto tr0;
+ case 1: goto tr0;
+ case 258: goto tr311;
+ case 259: goto tr311;
case 2: goto tr2;
- case 251: goto tr300;
+ case 260: goto tr312;
+ case 261: goto tr312;
case 3: goto tr2;
+ case 262: goto tr311;
case 4: goto tr2;
case 5: goto tr2;
case 6: goto tr2;
case 7: goto tr2;
case 8: goto tr2;
@@ -5447,295 +4115,298 @@
case 10: goto tr2;
case 11: goto tr2;
case 12: goto tr2;
case 13: goto tr2;
case 14: goto tr2;
- case 252: goto tr310;
case 15: goto tr2;
+ case 263: goto tr321;
case 16: goto tr2;
case 17: goto tr2;
case 18: goto tr2;
case 19: goto tr2;
case 20: goto tr2;
case 21: goto tr2;
case 22: goto tr2;
- case 253: goto tr311;
- case 254: goto tr313;
case 23: goto tr2;
+ case 264: goto tr322;
+ case 265: goto tr324;
case 24: goto tr2;
case 25: goto tr2;
case 26: goto tr2;
case 27: goto tr2;
case 28: goto tr2;
case 29: goto tr2;
- case 255: goto tr314;
case 30: goto tr2;
+ case 266: goto tr325;
case 31: goto tr2;
case 32: goto tr2;
case 33: goto tr2;
case 34: goto tr2;
- case 256: goto tr315;
case 35: goto tr2;
+ case 267: goto tr326;
case 36: goto tr2;
case 37: goto tr2;
case 38: goto tr2;
case 39: goto tr2;
case 40: goto tr2;
case 41: goto tr2;
- case 257: goto tr316;
case 42: goto tr2;
+ case 268: goto tr327;
case 43: goto tr2;
case 44: goto tr2;
case 45: goto tr2;
case 46: goto tr2;
case 47: goto tr2;
- case 258: goto tr300;
case 48: goto tr2;
- case 259: goto tr318;
- case 261: goto tr336;
- case 262: goto tr339;
- case 49: goto tr56;
- case 50: goto tr58;
- case 51: goto tr58;
- case 263: goto tr340;
- case 264: goto tr340;
- case 265: goto tr342;
- case 266: goto tr343;
- case 52: goto tr63;
- case 53: goto tr63;
- case 54: goto tr63;
- case 55: goto tr63;
- case 267: goto tr345;
- case 56: goto tr63;
- case 57: goto tr63;
- case 58: goto tr63;
- case 59: goto tr63;
- case 60: goto tr63;
- case 61: goto tr63;
- case 62: goto tr63;
- case 63: goto tr63;
- case 64: goto tr63;
- case 65: goto tr63;
- case 66: goto tr63;
- case 67: goto tr63;
- case 68: goto tr63;
- case 69: goto tr63;
- case 70: goto tr63;
- case 71: goto tr63;
- case 72: goto tr63;
- case 268: goto tr343;
- case 269: goto tr347;
- case 270: goto tr350;
- case 271: goto tr343;
- case 73: goto tr63;
- case 74: goto tr63;
- case 75: goto tr63;
- case 76: goto tr63;
- case 77: goto tr63;
- case 78: goto tr63;
- case 79: goto tr63;
- case 272: goto tr352;
- case 273: goto tr343;
- case 80: goto tr63;
- case 81: goto tr63;
- case 82: goto tr63;
- case 83: goto tr63;
- case 84: goto tr63;
- case 85: goto tr63;
- case 86: goto tr63;
- case 87: goto tr63;
- case 274: goto tr355;
- case 275: goto tr343;
- case 88: goto tr63;
- case 89: goto tr63;
- case 90: goto tr63;
- case 91: goto tr63;
- case 92: goto tr63;
- case 93: goto tr63;
- case 276: goto tr358;
- case 277: goto tr343;
- case 94: goto tr63;
- case 95: goto tr63;
- case 96: goto tr63;
- case 97: goto tr63;
- case 98: goto tr63;
- case 99: goto tr63;
- case 278: goto tr361;
- case 279: goto tr343;
- case 100: goto tr63;
- case 101: goto tr63;
- case 102: goto tr63;
- case 103: goto tr63;
- case 104: goto tr63;
- case 105: goto tr63;
- case 280: goto tr365;
- case 106: goto tr122;
- case 107: goto tr122;
- case 281: goto tr368;
- case 108: goto tr63;
- case 109: goto tr63;
- case 110: goto tr63;
- case 111: goto tr63;
- case 112: goto tr63;
- case 282: goto tr370;
- case 113: goto tr63;
- case 114: goto tr63;
- case 115: goto tr63;
- case 116: goto tr63;
- case 283: goto tr372;
- case 284: goto tr343;
- case 117: goto tr63;
- case 118: goto tr63;
- case 119: goto tr63;
- case 120: goto tr63;
- case 121: goto tr63;
- case 122: goto tr63;
- case 285: goto tr375;
- case 123: goto tr141;
- case 124: goto tr141;
- case 286: goto tr378;
- case 287: goto tr343;
- case 125: goto tr63;
- case 126: goto tr63;
- case 127: goto tr63;
- case 128: goto tr63;
- case 129: goto tr63;
- case 288: goto tr381;
- case 289: goto tr343;
- case 130: goto tr63;
- case 131: goto tr63;
- case 132: goto tr63;
- case 133: goto tr63;
- case 134: goto tr63;
- case 135: goto tr63;
- case 136: goto tr63;
- case 137: goto tr63;
- case 138: goto tr63;
- case 139: goto tr63;
- case 140: goto tr63;
- case 141: goto tr63;
- case 142: goto tr63;
- case 143: goto tr63;
- case 290: goto tr393;
- case 144: goto tr63;
- case 145: goto tr63;
- case 146: goto tr63;
- case 147: goto tr63;
- case 148: goto tr63;
- case 149: goto tr63;
- case 150: goto tr63;
- case 151: goto tr63;
- case 152: goto tr63;
- case 153: goto tr63;
- case 154: goto tr63;
- case 155: goto tr63;
- case 156: goto tr63;
- case 157: goto tr63;
- case 158: goto tr63;
- case 159: goto tr63;
- case 160: goto tr63;
- case 161: goto tr63;
- case 162: goto tr63;
- case 163: goto tr63;
- case 164: goto tr63;
- case 165: goto tr63;
- case 166: goto tr63;
- case 167: goto tr63;
- case 168: goto tr63;
- case 169: goto tr63;
- case 170: goto tr63;
- case 171: goto tr63;
- case 172: goto tr63;
- case 173: goto tr63;
- case 174: goto tr63;
- case 175: goto tr63;
- case 176: goto tr63;
- case 177: goto tr63;
- case 178: goto tr63;
- case 179: goto tr63;
- case 180: goto tr63;
- case 181: goto tr63;
- case 182: goto tr63;
- case 183: goto tr63;
- case 184: goto tr63;
- case 185: goto tr63;
- case 186: goto tr63;
- case 187: goto tr63;
- case 188: goto tr63;
- case 189: goto tr63;
- case 190: goto tr63;
- case 191: goto tr63;
- case 291: goto tr343;
- case 192: goto tr63;
- case 292: goto tr396;
- case 193: goto tr63;
- case 194: goto tr63;
- case 195: goto tr63;
- case 196: goto tr63;
- case 197: goto tr63;
- case 198: goto tr63;
- case 293: goto tr398;
- case 199: goto tr63;
- case 294: goto tr343;
- case 200: goto tr63;
- case 201: goto tr63;
- case 202: goto tr63;
- case 296: goto tr403;
- case 203: goto tr236;
- case 204: goto tr236;
- case 205: goto tr236;
- case 206: goto tr236;
- case 207: goto tr236;
- case 298: goto tr408;
- case 208: goto tr242;
- case 209: goto tr242;
- case 210: goto tr242;
- case 211: goto tr242;
- case 212: goto tr242;
- case 213: goto tr242;
- case 214: goto tr242;
- case 215: goto tr242;
- case 300: goto tr413;
- case 216: goto tr251;
- case 217: goto tr251;
- case 218: goto tr251;
- case 219: goto tr251;
- case 220: goto tr251;
- case 221: goto tr251;
- case 222: goto tr251;
- case 223: goto tr251;
- case 224: goto tr251;
- case 225: goto tr251;
- case 226: goto tr251;
- case 227: goto tr251;
- case 228: goto tr251;
- case 229: goto tr251;
- case 230: goto tr251;
- case 231: goto tr251;
- case 232: goto tr251;
- case 233: goto tr251;
- case 234: goto tr251;
- case 235: goto tr251;
- case 236: goto tr251;
- case 237: goto tr251;
- case 238: goto tr251;
- case 239: goto tr251;
- case 240: goto tr251;
- case 241: goto tr251;
- case 302: goto tr285;
- case 242: goto tr285;
- case 303: goto tr422;
- case 304: goto tr422;
- case 243: goto tr287;
- case 305: goto tr423;
- case 306: goto tr423;
- case 244: goto tr287;
+ case 269: goto tr311;
+ case 49: goto tr2;
+ case 270: goto tr329;
+ case 272: goto tr332;
+ case 275: goto tr351;
+ case 276: goto tr354;
+ case 60: goto tr67;
+ case 61: goto tr69;
+ case 62: goto tr69;
+ case 277: goto tr355;
+ case 278: goto tr355;
+ case 279: goto tr357;
+ case 280: goto tr358;
+ case 63: goto tr74;
+ case 64: goto tr74;
+ case 65: goto tr74;
+ case 66: goto tr74;
+ case 281: goto tr360;
+ case 67: goto tr74;
+ case 68: goto tr74;
+ case 69: goto tr74;
+ case 70: goto tr74;
+ case 71: goto tr74;
+ case 72: goto tr74;
+ case 73: goto tr74;
+ case 74: goto tr74;
+ case 75: goto tr74;
+ case 76: goto tr74;
+ case 77: goto tr74;
+ case 78: goto tr74;
+ case 79: goto tr74;
+ case 80: goto tr74;
+ case 81: goto tr74;
+ case 82: goto tr74;
+ case 83: goto tr74;
+ case 282: goto tr358;
+ case 283: goto tr362;
+ case 284: goto tr365;
+ case 285: goto tr358;
+ case 84: goto tr74;
+ case 85: goto tr74;
+ case 86: goto tr74;
+ case 87: goto tr74;
+ case 88: goto tr74;
+ case 89: goto tr74;
+ case 90: goto tr74;
+ case 286: goto tr367;
+ case 287: goto tr358;
+ case 91: goto tr74;
+ case 92: goto tr74;
+ case 93: goto tr74;
+ case 94: goto tr74;
+ case 95: goto tr74;
+ case 96: goto tr74;
+ case 97: goto tr74;
+ case 98: goto tr74;
+ case 288: goto tr370;
+ case 289: goto tr358;
+ case 99: goto tr74;
+ case 100: goto tr74;
+ case 101: goto tr74;
+ case 102: goto tr74;
+ case 103: goto tr74;
+ case 104: goto tr74;
+ case 290: goto tr373;
+ case 291: goto tr358;
+ case 105: goto tr74;
+ case 106: goto tr74;
+ case 107: goto tr74;
+ case 108: goto tr74;
+ case 109: goto tr74;
+ case 110: goto tr74;
+ case 292: goto tr376;
+ case 293: goto tr358;
+ case 111: goto tr74;
+ case 112: goto tr74;
+ case 113: goto tr74;
+ case 114: goto tr74;
+ case 115: goto tr74;
+ case 116: goto tr74;
+ case 294: goto tr380;
+ case 117: goto tr133;
+ case 118: goto tr133;
+ case 295: goto tr383;
+ case 119: goto tr74;
+ case 120: goto tr74;
+ case 121: goto tr74;
+ case 122: goto tr74;
+ case 123: goto tr74;
+ case 296: goto tr385;
+ case 124: goto tr74;
+ case 125: goto tr74;
+ case 126: goto tr74;
+ case 127: goto tr74;
+ case 297: goto tr387;
+ case 298: goto tr358;
+ case 128: goto tr74;
+ case 129: goto tr74;
+ case 130: goto tr74;
+ case 131: goto tr74;
+ case 132: goto tr74;
+ case 133: goto tr74;
+ case 299: goto tr390;
+ case 134: goto tr152;
+ case 135: goto tr152;
+ case 300: goto tr393;
+ case 301: goto tr358;
+ case 136: goto tr74;
+ case 137: goto tr74;
+ case 138: goto tr74;
+ case 139: goto tr74;
+ case 140: goto tr74;
+ case 302: goto tr396;
+ case 303: goto tr358;
+ case 141: goto tr74;
+ case 142: goto tr74;
+ case 143: goto tr74;
+ case 144: goto tr74;
+ case 145: goto tr74;
+ case 146: goto tr74;
+ case 147: goto tr74;
+ case 148: goto tr74;
+ case 149: goto tr74;
+ case 150: goto tr74;
+ case 151: goto tr74;
+ case 152: goto tr74;
+ case 153: goto tr74;
+ case 154: goto tr74;
+ case 304: goto tr408;
+ case 155: goto tr74;
+ case 156: goto tr74;
+ case 157: goto tr74;
+ case 158: goto tr74;
+ case 159: goto tr74;
+ case 160: goto tr74;
+ case 161: goto tr74;
+ case 162: goto tr74;
+ case 163: goto tr74;
+ case 164: goto tr74;
+ case 165: goto tr74;
+ case 166: goto tr74;
+ case 167: goto tr74;
+ case 168: goto tr74;
+ case 169: goto tr74;
+ case 170: goto tr74;
+ case 171: goto tr74;
+ case 172: goto tr74;
+ case 173: goto tr74;
+ case 174: goto tr74;
+ case 175: goto tr74;
+ case 176: goto tr74;
+ case 177: goto tr74;
+ case 178: goto tr74;
+ case 179: goto tr74;
+ case 180: goto tr74;
+ case 181: goto tr74;
+ case 182: goto tr74;
+ case 183: goto tr74;
+ case 184: goto tr74;
+ case 185: goto tr74;
+ case 186: goto tr74;
+ case 187: goto tr74;
+ case 188: goto tr74;
+ case 189: goto tr74;
+ case 190: goto tr74;
+ case 191: goto tr74;
+ case 192: goto tr74;
+ case 193: goto tr74;
+ case 194: goto tr74;
+ case 195: goto tr74;
+ case 196: goto tr74;
+ case 197: goto tr74;
+ case 198: goto tr74;
+ case 199: goto tr74;
+ case 200: goto tr74;
+ case 201: goto tr74;
+ case 202: goto tr74;
+ case 305: goto tr358;
+ case 203: goto tr74;
+ case 306: goto tr411;
+ case 204: goto tr74;
+ case 205: goto tr74;
+ case 206: goto tr74;
+ case 207: goto tr74;
+ case 208: goto tr74;
+ case 209: goto tr74;
+ case 307: goto tr413;
+ case 210: goto tr74;
+ case 308: goto tr358;
+ case 211: goto tr74;
+ case 212: goto tr74;
+ case 213: goto tr74;
+ case 310: goto tr418;
+ case 214: goto tr247;
+ case 215: goto tr247;
+ case 216: goto tr247;
+ case 217: goto tr247;
+ case 218: goto tr247;
+ case 312: goto tr423;
+ case 219: goto tr253;
+ case 220: goto tr253;
+ case 221: goto tr253;
+ case 222: goto tr253;
+ case 223: goto tr253;
+ case 224: goto tr253;
+ case 225: goto tr253;
+ case 226: goto tr253;
+ case 314: goto tr428;
+ case 227: goto tr262;
+ case 228: goto tr262;
+ case 229: goto tr262;
+ case 230: goto tr262;
+ case 231: goto tr262;
+ case 232: goto tr262;
+ case 233: goto tr262;
+ case 234: goto tr262;
+ case 235: goto tr262;
+ case 236: goto tr262;
+ case 237: goto tr262;
+ case 238: goto tr262;
+ case 239: goto tr262;
+ case 240: goto tr262;
+ case 241: goto tr262;
+ case 242: goto tr262;
+ case 243: goto tr262;
+ case 244: goto tr262;
+ case 245: goto tr262;
+ case 246: goto tr262;
+ case 247: goto tr262;
+ case 248: goto tr262;
+ case 249: goto tr262;
+ case 250: goto tr262;
+ case 251: goto tr262;
+ case 252: goto tr262;
+ case 316: goto tr296;
+ case 253: goto tr296;
+ case 317: goto tr437;
+ case 318: goto tr437;
+ case 254: goto tr298;
+ case 319: goto tr438;
+ case 320: goto tr438;
+ case 255: goto tr298;
}
}
+ _out: {}
}
-#line 1324 "ext/dtext/dtext.rl"
+#line 1334 "ext/dtext/dtext.rl"
dstack_close(sm);
encoding = rb_enc_find("utf-8");
ret = rb_enc_str_new(sm->output->str, sm->output->len, encoding);