diff options
Diffstat (limited to 'test/racc/regress/csspool')
-rw-r--r-- | test/racc/regress/csspool | 2318 |
1 files changed, 2318 insertions, 0 deletions
diff --git a/test/racc/regress/csspool b/test/racc/regress/csspool new file mode 100644 index 0000000000..7b7e778b41 --- /dev/null +++ b/test/racc/regress/csspool @@ -0,0 +1,2318 @@ +# +# DO NOT MODIFY!!!! +# This file is automatically generated by Racc 1.4.14 +# from Racc grammer file "". +# + +require 'racc/parser.rb' +module CSSPool + module CSS + class Parser < Racc::Parser + +module_eval(<<'...end csspool.y/module_eval...', 'csspool.y', 670) + +def numeric thing + thing = thing.gsub(/[^\d.]/, '') + Integer(thing) rescue Float(thing) +end + +def interpret_identifier s + interpret_escapes s +end + +def interpret_uri s + interpret_escapes s.match(/^url\((.*)\)$/mui)[1].strip.match(/^(['"]?)((?:\\.|.)*)\1$/mu)[2] +end + +def interpret_string_no_quote s + interpret_escapes s.match(/^(.*)\)$/mu)[1].strip.match(/^(['"]?)((?:\\.|.)*)\1$/mu)[2] +end + +def interpret_string s + interpret_escapes s.match(/^(['"])((?:\\.|.)*)\1$/mu)[2] +end + +def interpret_escapes s + token_exp = /\\(?:([0-9a-fA-F]{1,6}(?:\r\n|\s)?)|(.))/mu + return s.gsub(token_exp) do |escape_sequence| + if !$1.nil? + code = $1.chomp.to_i 16 + code = 0xFFFD if code > 0x10FFFF + next [code].pack('U') + end + next '' if $2 == "\n" + next $2 + end +end + +# override racc's on_error so we can have context in our error messages +def on_error(t, val, vstack) + errcontext = (@ss.pre_match[-10..-1] || @ss.pre_match) + + @ss.matched + @ss.post_match[0..9] + line_number = @ss.pre_match.lines.count + raise ParseError, sprintf("parse error on value %s (%s) " + + "on line %s around \"%s\"", + val.inspect, token_to_str(t) || '?', + line_number, errcontext) +end + +def before_pos(val) + # don't include leading whitespace + return current_pos - val.last.length + val.last[/\A\s*/].size +end + +def after_pos(val) + # don't include trailing whitespace + return current_pos - val.last[/\s*\z/].size +end + +# charpos will work with multibyte strings but is not available until ruby 2 +def current_pos + @ss.respond_to?('charpos') ? @ss.charpos : @ss.pos +end +...end csspool.y/module_eval... +##### State transition tables begin ### + +racc_action_table = [ + 9, 10, 137, 83, 37, 31, 55, 139, 59, 39, + 45, 47, 45, 47, 85, 9, 10, 55, 129, 37, + 31, 103, 84, 130, 39, 45, 47, 157, 158, 108, + 113, 20, 113, 56, 37, 114, 23, 114, 163, 39, + 45, 47, 104, 27, 56, 11, 20, 346, 48, 25, + 48, 23, 224, 29, 138, 319, 38, 46, 27, 46, + 11, 108, 113, 48, 25, 9, 10, 114, 29, 37, + 31, 38, 46, 242, 39, 45, 47, 115, 48, 115, + 9, 10, 319, 163, 37, 31, 38, 46, 339, 39, + 45, 47, 351, 306, 245, 223, 20, 108, 113, 37, + 31, 23, 118, 114, 39, 45, 47, 244, 27, 115, + 11, 20, 344, 48, 25, 243, 23, 313, 29, 340, + 314, 38, 46, 27, 345, 11, 20, 55, 48, 25, + 155, 23, 163, 29, 37, 64, 38, 46, 27, 39, + 45, 47, 231, 48, 25, 115, 103, 232, 29, -89, + 229, 38, 46, 203, 56, 230, 123, 250, 37, 319, + 251, 20, 357, 39, 45, 47, 23, 104, 75, 204, + 124, 125, 188, 27, 59, 322, 45, 47, 48, 25, + 187, 3, 359, 29, 74, 73, 38, 46, 83, 126, + 198, 49, 190, 197, 192, 191, 193, 194, 195, 85, + 37, 31, 48, 108, 113, 39, 45, 47, 107, 114, + 38, 46, 53, 105, 48, 103, 153, 170, 151, 98, + 116, 181, 186, 46, 185, 196, 120, 20, 108, 113, + 45, 47, 23, 215, 114, 298, 104, 297, 188, 27, + 59, 201, 45, 47, 48, 25, 187, 121, 252, 29, + 151, 115, 38, 46, 83, 128, 198, 202, 190, 197, + 192, 191, 193, 194, 195, 85, 37, 31, 48, 131, + 77, 39, 45, 47, 45, 47, 115, 46, 203, 37, + 48, 136, 148, 170, 39, 45, 47, 181, 186, 46, + 185, 196, 92, 20, 204, 37, 31, -28, 23, 87, + 39, 45, 47, 156, 201, 27, 160, 163, 94, 75, + 48, 25, 48, 164, 296, 29, 295, 83, 38, 46, + 202, 46, 20, 48, 165, 74, 73, 23, 85, 166, + 167, 38, 46, 188, 27, 59, 84, 168, 169, 48, + 25, 187, 199, 294, 29, 293, 200, 38, 46, 83, + 292, 198, 291, 190, 197, 192, 191, 193, 194, 195, + 85, 37, 31, 92, 37, 31, 39, 45, 47, 39, + 45, 47, 289, 163, 290, 113, 210, -33, 170, 288, + 114, 287, 181, 186, 212, 185, 196, 92, 20, -33, + 216, 37, 217, 23, 218, 219, 39, 45, 47, 108, + 27, 108, 225, 94, 226, 48, 25, 188, 48, 59, + 29, 258, 233, 38, 46, 187, 38, 46, 260, 150, + 152, 151, 115, 83, 129, 198, 259, 190, 197, 192, + 191, 193, 194, 195, 85, 48, 234, 163, 255, 256, + 155, 263, 169, 38, 46, 264, 188, 168, 59, 265, + 266, 92, 170, 92, 187, 92, 181, 186, 92, 185, + 196, 184, 83, 278, 198, 279, 190, 197, 192, 191, + 193, 194, 195, 85, 37, 31, 281, 286, 229, 39, + 45, 47, 198, 231, 190, 197, 192, 191, 193, 194, + 195, 170, 163, 300, 301, 181, 186, 302, 185, 196, + 303, 20, 37, 306, 307, 255, 23, 39, 45, 47, + 75, 163, 188, 27, 59, 185, 168, 312, 48, 25, + 187, 317, 319, 29, 323, 324, 38, 46, 83, 325, + 198, 326, 190, 197, 192, 191, 193, 194, 195, 85, + 327, 328, 329, 330, 331, 332, 48, 333, 334, 306, + 188, 163, 59, 338, 38, 46, nil, 170, 187, nil, + nil, 181, 186, nil, 185, 196, 83, nil, 198, nil, + 190, 197, 192, 191, 193, 194, 195, 85, 37, 31, + nil, nil, nil, 39, 45, 47, nil, nil, 188, nil, + 59, 285, nil, nil, nil, 170, 187, nil, nil, 181, + 186, nil, 185, 196, 83, 141, 198, nil, 190, 197, + 192, 191, 193, 194, 195, 85, nil, nil, nil, 143, + nil, nil, 48, 241, 235, 236, 237, nil, nil, nil, + 38, 46, nil, 170, nil, nil, 145, 181, 186, nil, + 185, 196, nil, 144, nil, 146, nil, 147, nil, 142, + 238, 239, 240, 272, nil, 83, nil, 198, nil, 190, + 197, 192, 191, 193, 194, 195, 272, nil, 83, nil, + 198, nil, 190, 197, 192, 191, 193, 194, 195, 272, + nil, 83, nil, 198, nil, 190, 197, 192, 191, 193, + 194, 195, 272, nil, 83, nil, 198, nil, 190, 197, + 192, 191, 193, 194, 195, 272, nil, 83, nil, 198, + nil, 190, 197, 192, 191, 193, 194, 195, 272, nil, + 83, nil, 198, nil, 190, 197, 192, 191, 193, 194, + 195 ] + +racc_action_check = [ + 2, 2, 47, 22, 2, 2, 11, 47, 11, 2, + 2, 2, 41, 41, 22, 5, 5, 10, 38, 5, + 5, 217, 22, 38, 5, 5, 5, 70, 70, 221, + 221, 2, 210, 11, 144, 221, 2, 210, 312, 144, + 144, 144, 217, 2, 10, 2, 5, 316, 2, 2, + 41, 5, 112, 2, 47, 320, 2, 2, 5, 41, + 5, 110, 110, 5, 5, 6, 6, 110, 5, 6, + 6, 5, 5, 142, 6, 6, 6, 221, 144, 210, + 7, 7, 321, 335, 7, 7, 144, 144, 309, 7, + 7, 7, 337, 338, 143, 112, 6, 30, 30, 15, + 15, 6, 30, 30, 15, 15, 15, 143, 6, 110, + 6, 7, 315, 6, 6, 142, 7, 269, 6, 309, + 269, 6, 6, 7, 315, 7, 15, 58, 7, 7, + 58, 15, 340, 7, 19, 19, 7, 7, 15, 19, + 19, 19, 131, 15, 15, 30, 99, 131, 15, 99, + 128, 15, 15, 91, 58, 128, 34, 149, 302, 349, + 149, 19, 350, 302, 302, 302, 19, 99, 157, 91, + 34, 34, 286, 19, 286, 286, 42, 42, 19, 19, + 286, 1, 358, 19, 157, 157, 19, 19, 286, 34, + 286, 3, 286, 286, 286, 286, 286, 286, 286, 286, + 13, 13, 302, 28, 28, 13, 13, 13, 28, 28, + 302, 302, 9, 27, 42, 26, 57, 286, 57, 26, + 29, 286, 286, 42, 286, 286, 32, 13, 100, 100, + 43, 43, 13, 100, 100, 240, 26, 240, 285, 13, + 285, 206, 44, 44, 13, 13, 285, 33, 154, 13, + 154, 28, 13, 13, 285, 37, 285, 206, 285, 285, + 285, 285, 285, 285, 285, 285, 21, 21, 43, 39, + 21, 21, 21, 21, 35, 35, 100, 43, 207, 122, + 44, 46, 53, 285, 122, 122, 122, 285, 285, 44, + 285, 285, 25, 21, 207, 24, 24, 20, 21, 24, + 24, 24, 24, 67, 90, 21, 71, 75, 25, 20, + 21, 21, 35, 76, 239, 21, 239, 166, 21, 21, + 90, 35, 24, 122, 78, 20, 20, 24, 166, 79, + 80, 122, 122, 353, 24, 353, 166, 81, 82, 24, + 24, 353, 86, 238, 24, 238, 88, 24, 24, 353, + 237, 353, 237, 353, 353, 353, 353, 353, 353, 353, + 353, 14, 14, 94, 31, 31, 14, 14, 14, 31, + 31, 31, 236, 270, 236, 92, 92, 270, 353, 235, + 92, 235, 353, 353, 97, 353, 353, 92, 14, 270, + 101, 121, 102, 14, 105, 106, 121, 121, 121, 108, + 14, 109, 114, 92, 117, 14, 14, 171, 31, 171, + 14, 171, 137, 14, 14, 171, 31, 31, 171, 54, + 54, 54, 92, 171, 138, 171, 171, 171, 171, 171, + 171, 171, 171, 171, 171, 121, 139, 147, 161, 162, + 172, 175, 176, 121, 121, 177, 83, 179, 83, 183, + 185, 201, 171, 202, 83, 203, 171, 171, 204, 171, + 171, 83, 83, 208, 83, 209, 83, 83, 83, 83, + 83, 83, 83, 83, 12, 12, 214, 224, 233, 12, + 12, 12, 189, 234, 189, 189, 189, 189, 189, 189, + 189, 83, 243, 245, 246, 83, 83, 247, 83, 83, + 248, 12, 146, 249, 251, 254, 12, 146, 146, 146, + 255, 256, 261, 12, 261, 266, 267, 268, 12, 12, + 261, 280, 284, 12, 287, 288, 12, 12, 261, 289, + 261, 290, 261, 261, 261, 261, 261, 261, 261, 261, + 291, 292, 293, 294, 295, 296, 146, 297, 298, 299, + 322, 304, 322, 306, 146, 146, nil, 261, 322, nil, + nil, 261, 261, nil, 261, 261, 322, nil, 322, nil, + 322, 322, 322, 322, 322, 322, 322, 322, 64, 64, + nil, nil, nil, 64, 64, 64, nil, nil, 223, nil, + 223, 223, nil, nil, nil, 322, 223, nil, nil, 322, + 322, nil, 322, 322, 223, 48, 223, nil, 223, 223, + 223, 223, 223, 223, 223, 223, nil, nil, nil, 48, + nil, nil, 64, 140, 140, 140, 140, nil, nil, nil, + 64, 64, nil, 223, nil, nil, 48, 223, 223, nil, + 223, 223, nil, 48, nil, 48, nil, 48, nil, 48, + 140, 140, 140, 272, nil, 272, nil, 272, nil, 272, + 272, 272, 272, 272, 272, 272, 313, nil, 313, nil, + 313, nil, 313, 313, 313, 313, 313, 313, 313, 314, + nil, 314, nil, 314, nil, 314, 314, 314, 314, 314, + 314, 314, 344, nil, 344, nil, 344, nil, 344, 344, + 344, 344, 344, 344, 344, 345, nil, 345, nil, 345, + nil, 345, 345, 345, 345, 345, 345, 345, 186, nil, + 186, nil, 186, nil, 186, 186, 186, 186, 186, 186, + 186 ] + +racc_action_pointer = [ + nil, 181, -2, 191, nil, 13, 63, 78, nil, 208, + 13, 2, 468, 194, 355, 93, nil, nil, nil, 128, + 291, 260, -17, nil, 289, 274, 209, 207, 198, 211, + 92, 358, 217, 239, 149, 262, nil, 197, 12, 211, + nil, 0, 164, 218, 230, nil, 275, -4, 599, nil, + nil, nil, nil, 277, 414, nil, nil, 211, 123, nil, + nil, nil, nil, nil, 572, nil, nil, 293, nil, nil, + 19, 300, nil, nil, nil, 300, 303, nil, 315, 321, + 323, 330, 331, 442, nil, nil, 332, nil, 337, nil, + 268, 117, 369, nil, 345, nil, nil, 374, nil, 140, + 223, 381, 384, nil, nil, 385, 385, nil, 394, 396, + 56, nil, 45, nil, 396, nil, nil, 394, nil, nil, + nil, 385, 273, nil, nil, nil, nil, nil, 144, nil, + nil, 136, nil, nil, nil, nil, nil, 354, 418, 378, + 609, nil, 67, 88, 28, nil, 496, 430, nil, 152, + nil, nil, nil, nil, 243, nil, nil, 150, nil, nil, + nil, 402, 433, nil, nil, nil, 297, nil, nil, nil, + nil, 403, 433, nil, nil, 434, 435, 438, nil, 440, + nil, nil, nil, 430, nil, 442, 700, nil, nil, 460, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, 433, 435, 437, 440, nil, 205, 242, 444, 446, + 26, nil, nil, nil, 466, nil, nil, 15, nil, nil, + nil, 24, nil, 584, 427, nil, nil, nil, nil, nil, + nil, nil, nil, 472, 477, 375, 368, 346, 339, 310, + 231, nil, nil, 485, nil, 474, 475, 489, 481, 497, + nil, 498, nil, nil, 469, 492, 504, nil, nil, nil, + nil, 508, nil, nil, nil, nil, 459, 509, 498, 95, + 366, nil, 635, nil, nil, nil, nil, nil, nil, nil, + 502, nil, nil, nil, 490, 234, 168, 510, 511, 515, + 517, 526, 527, 528, 529, 530, 531, 533, 534, 543, + nil, nil, 152, nil, 544, nil, 545, nil, nil, 69, + nil, nil, 31, 648, 661, 101, 28, nil, nil, nil, + 23, 50, 546, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 76, nil, 73, 87, nil, + 125, nil, nil, nil, 674, 687, nil, nil, nil, 127, + 143, nil, nil, 329, nil, nil, nil, nil, 163, nil ] + +racc_action_default = [ + -1, -229, -10, -229, -2, -6, -7, -8, -9, -229, + -229, -229, -41, -42, -43, -44, -45, -46, -47, -33, + -23, -229, -229, -55, -229, -229, -89, -229, -229, -229, + -229, -229, -229, -103, -105, -111, -112, -115, -229, -120, + -119, -124, -125, -126, -127, -132, -229, -229, -229, 360, + -3, -4, -5, -229, -229, -15, -16, -229, -229, -228, + -37, -38, -39, -40, -32, -48, -49, -229, -99, -21, + -229, -229, -35, -26, -27, -33, -229, -53, -229, -57, + -58, -59, -60, -229, -198, -214, -229, -62, -229, -64, + -65, -66, -229, -71, -229, -73, -74, -229, -82, -85, + -229, -229, -91, -92, -93, -229, -229, -95, -160, -165, + -166, -167, -229, -174, -229, -176, -96, -229, -98, -100, + -101, -229, -229, -106, -107, -108, -109, -110, -229, -117, + -121, -229, -128, -129, -130, -131, -133, -115, -229, -229, + -229, -147, -229, -229, -229, -152, -229, -33, -11, -229, + -13, -14, -20, -18, -229, -227, -50, -28, -51, -35, + -29, -25, -229, -32, -52, -54, -229, -197, -194, -213, + -36, -182, -183, -184, -185, -186, -187, -188, -189, -190, + -191, -192, -193, -229, -196, -200, -229, -212, -216, -229, + -218, -219, -220, -221, -222, -223, -224, -225, -226, -61, + -63, -229, -229, -229, -229, -67, -68, -69, -229, -229, + -229, -72, -81, -84, -229, -87, -88, -89, -83, -94, + -161, -164, -163, -229, -229, -175, -97, -102, -104, -116, + -123, -118, -122, -229, -229, -229, -229, -229, -229, -229, + -229, -146, -148, -33, -149, -229, -229, -114, -229, -156, + -12, -229, -17, -22, -24, -229, -33, -56, -177, -178, + -179, -229, -181, -215, -211, -195, -229, -209, -229, -202, + -205, -208, -229, -217, -76, -78, -75, -77, -70, -79, + -229, -86, -90, -162, -173, -229, -229, -229, -229, -229, + -229, -229, -229, -229, -229, -229, -229, -229, -229, -156, + -150, -151, -229, -153, -33, -157, -158, -19, -34, -229, + -180, -199, -33, -229, -229, -229, -229, -80, -168, -172, + -173, -173, -229, -134, -135, -136, -137, -138, -139, -140, + -141, -142, -143, -144, -145, -33, -113, -229, -229, -30, + -33, -201, -203, -204, -229, -229, -210, -169, -170, -173, + -229, -154, -159, -229, -206, -207, -171, -155, -229, -31 ] + +racc_goto_table = [ + 81, 248, 183, 68, 106, 91, 117, 271, 78, 246, + 273, 247, 82, 69, 209, 161, 97, 90, 268, 304, + 89, 119, 54, 57, 354, 355, 318, 60, 61, 62, + 63, 220, 221, 58, 65, 127, 76, 282, 70, 86, + 227, 132, 133, 134, 135, 4, 228, 208, 50, 51, + 52, 122, 159, 308, 119, 140, 67, 352, 66, 162, + 1, 261, 347, 348, 2, 311, 88, 149, nil, 335, + 154, nil, 207, nil, 211, nil, 214, nil, nil, nil, + nil, nil, nil, nil, 206, nil, 222, 205, nil, 213, + 262, 356, nil, 271, nil, nil, nil, nil, nil, nil, + nil, nil, 254, nil, 316, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, 249, 280, nil, 271, 271, nil, nil, nil, nil, + nil, nil, 284, nil, 81, 342, 343, nil, nil, nil, + 253, nil, 257, nil, nil, nil, 82, 336, nil, nil, + nil, nil, nil, nil, 267, 271, 271, 247, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 310, 274, 275, 276, 277, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 283, nil, nil, + nil, nil, nil, nil, 320, 321, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 299, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 309, 349, nil, nil, nil, nil, nil, nil, nil, nil, + 267, nil, nil, nil, 315, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 358, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 337, nil, + nil, 267, 267, nil, nil, nil, 341, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, 350, + nil, nil, 267, 267, 353 ] + +racc_goto_check = [ + 35, 62, 18, 17, 51, 41, 51, 77, 32, 58, + 77, 58, 36, 12, 46, 15, 48, 40, 82, 68, + 39, 55, 8, 8, 84, 84, 73, 7, 7, 7, + 7, 70, 70, 10, 7, 61, 7, 52, 11, 7, + 56, 61, 61, 61, 61, 2, 57, 42, 2, 2, + 2, 59, 14, 16, 55, 63, 27, 69, 28, 17, + 1, 74, 73, 73, 3, 81, 38, 9, nil, 68, + 8, nil, 41, nil, 41, nil, 51, nil, nil, nil, + nil, nil, nil, nil, 40, nil, 51, 39, nil, 48, + 18, 73, nil, 77, nil, nil, nil, nil, nil, nil, + nil, nil, 15, nil, 82, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, 17, 46, nil, 77, 77, nil, nil, nil, nil, + nil, nil, 18, nil, 35, 82, 82, nil, nil, nil, + 12, nil, 32, nil, nil, nil, 36, 62, nil, nil, + nil, nil, nil, nil, 35, 77, 77, 58, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 18, 41, 41, 41, 41, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 51, nil, nil, + nil, nil, nil, nil, 18, 18, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 17, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 17, 18, nil, nil, nil, nil, nil, nil, nil, nil, + 35, nil, nil, nil, 17, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 18, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 17, nil, + nil, 35, 35, nil, nil, nil, 17, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, 17, + nil, nil, 35, 35, 17 ] + +racc_goto_pointer = [ + nil, 60, 43, 64, nil, nil, nil, 15, 12, 13, + 22, 18, -7, nil, -19, -57, -202, -16, -81, nil, + nil, nil, nil, nil, nil, nil, nil, 37, 39, nil, + nil, nil, -14, nil, nil, -22, -10, nil, 41, -5, + -8, -20, -45, nil, nil, nil, -78, nil, -10, nil, + nil, -24, -180, nil, nil, -10, -81, -76, -135, 17, + nil, 0, -145, 8, nil, nil, nil, nil, -230, -281, + -77, nil, nil, -258, -110, nil, nil, -179, nil, nil, + nil, -201, -168, nil, -320, nil ] + +racc_goto_default = [ + nil, nil, nil, nil, 5, 6, 7, 8, nil, nil, + 172, nil, nil, 71, nil, nil, 72, nil, nil, 180, + 12, 13, 14, 15, 16, 17, 18, nil, nil, 19, + 21, 22, nil, 79, 80, 179, 176, 24, nil, nil, + nil, nil, nil, 93, 95, 96, 111, 26, nil, 99, + 100, nil, 101, 102, 28, 30, 32, 33, 34, nil, + 35, 36, nil, 40, 41, 42, 43, 44, nil, 305, + 110, 109, 112, nil, nil, 171, 173, 174, 175, 177, + 178, 182, nil, 269, 270, 189 ] + +racc_reduce_table = [ + 0, 0, :racc_error, + 0, 63, :_reduce_1, + 2, 61, :_reduce_2, + 2, 62, :_reduce_none, + 2, 62, :_reduce_none, + 2, 62, :_reduce_none, + 1, 62, :_reduce_none, + 1, 62, :_reduce_none, + 1, 62, :_reduce_none, + 1, 62, :_reduce_none, + 0, 62, :_reduce_none, + 3, 64, :_reduce_11, + 4, 65, :_reduce_12, + 3, 65, :_reduce_13, + 2, 68, :_reduce_none, + 1, 68, :_reduce_15, + 1, 68, :_reduce_16, + 4, 66, :_reduce_17, + 3, 66, :_reduce_18, + 3, 69, :_reduce_19, + 1, 69, :_reduce_20, + 1, 71, :_reduce_21, + 3, 71, :_reduce_22, + 0, 71, :_reduce_23, + 3, 72, :_reduce_24, + 2, 72, :_reduce_25, + 1, 73, :_reduce_26, + 1, 73, :_reduce_27, + 0, 73, :_reduce_28, + 1, 74, :_reduce_29, + 5, 76, :_reduce_30, + 8, 76, :_reduce_31, + 1, 77, :_reduce_32, + 0, 77, :_reduce_33, + 3, 75, :_reduce_34, + 0, 75, :_reduce_35, + 1, 79, :_reduce_36, + 2, 67, :_reduce_none, + 2, 67, :_reduce_none, + 2, 67, :_reduce_none, + 2, 67, :_reduce_none, + 1, 67, :_reduce_none, + 1, 67, :_reduce_none, + 1, 67, :_reduce_none, + 1, 67, :_reduce_none, + 1, 81, :_reduce_none, + 1, 81, :_reduce_none, + 1, 81, :_reduce_none, + 1, 87, :_reduce_none, + 1, 87, :_reduce_none, + 3, 84, :_reduce_50, + 3, 89, :_reduce_51, + 3, 85, :_reduce_52, + 2, 85, :_reduce_53, + 3, 90, :_reduce_54, + 1, 91, :_reduce_55, + 3, 92, :_reduce_56, + 1, 92, :_reduce_57, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 3, 86, :_reduce_61, + 2, 86, :_reduce_62, + 3, 97, :_reduce_63, + 1, 98, :_reduce_64, + 1, 98, :_reduce_65, + 1, 98, :_reduce_66, + 1, 102, :_reduce_67, + 1, 102, :_reduce_68, + 1, 102, :_reduce_69, + 3, 101, :_reduce_70, + 1, 101, :_reduce_71, + 2, 99, :_reduce_72, + 1, 100, :_reduce_none, + 1, 100, :_reduce_none, + 3, 104, :_reduce_75, + 3, 104, :_reduce_76, + 3, 105, :_reduce_77, + 3, 105, :_reduce_78, + 3, 103, :_reduce_79, + 4, 103, :_reduce_80, + 3, 82, :_reduce_none, + 2, 82, :_reduce_none, + 3, 107, :_reduce_83, + 2, 108, :_reduce_none, + 1, 108, :_reduce_none, + 3, 109, :_reduce_86, + 2, 109, :_reduce_87, + 2, 110, :_reduce_88, + 0, 112, :_reduce_none, + 3, 112, :_reduce_90, + 1, 112, :_reduce_none, + 1, 113, :_reduce_none, + 1, 113, :_reduce_93, + 3, 83, :_reduce_94, + 2, 83, :_reduce_95, + 2, 114, :_reduce_96, + 3, 80, :_reduce_97, + 2, 80, :_reduce_98, + 1, 88, :_reduce_99, + 2, 115, :_reduce_100, + 2, 115, :_reduce_101, + 3, 116, :_reduce_102, + 1, 116, :_reduce_103, + 3, 117, :_reduce_104, + 1, 117, :_reduce_none, + 1, 119, :_reduce_106, + 1, 119, :_reduce_107, + 1, 119, :_reduce_108, + 1, 119, :_reduce_109, + 2, 118, :_reduce_110, + 1, 118, :_reduce_111, + 1, 118, :_reduce_112, + 3, 122, :_reduce_113, + 1, 122, :_reduce_none, + 1, 123, :_reduce_115, + 3, 123, :_reduce_116, + 2, 123, :_reduce_117, + 3, 123, :_reduce_118, + 1, 120, :_reduce_119, + 1, 120, :_reduce_120, + 2, 120, :_reduce_121, + 3, 120, :_reduce_122, + 3, 120, :_reduce_123, + 1, 121, :_reduce_124, + 1, 121, :_reduce_125, + 1, 121, :_reduce_126, + 1, 121, :_reduce_127, + 2, 121, :_reduce_128, + 2, 121, :_reduce_129, + 2, 121, :_reduce_130, + 2, 121, :_reduce_131, + 1, 124, :_reduce_132, + 2, 125, :_reduce_133, + 5, 126, :_reduce_134, + 5, 126, :_reduce_135, + 5, 126, :_reduce_136, + 5, 126, :_reduce_137, + 5, 126, :_reduce_138, + 5, 126, :_reduce_139, + 5, 126, :_reduce_140, + 5, 126, :_reduce_141, + 5, 126, :_reduce_142, + 5, 126, :_reduce_143, + 5, 126, :_reduce_144, + 5, 126, :_reduce_145, + 3, 126, :_reduce_146, + 2, 127, :_reduce_147, + 3, 127, :_reduce_148, + 3, 127, :_reduce_149, + 4, 127, :_reduce_150, + 4, 127, :_reduce_151, + 2, 127, :_reduce_152, + 4, 127, :_reduce_153, + 6, 127, :_reduce_154, + 7, 127, :_reduce_155, + 0, 128, :_reduce_none, + 1, 128, :_reduce_none, + 1, 129, :_reduce_none, + 3, 129, :_reduce_none, + 1, 130, :_reduce_none, + 2, 130, :_reduce_none, + 3, 111, :_reduce_none, + 2, 111, :_reduce_none, + 2, 111, :_reduce_none, + 1, 111, :_reduce_none, + 1, 111, :_reduce_none, + 1, 131, :_reduce_167, + 4, 106, :_reduce_168, + 5, 106, :_reduce_169, + 5, 106, :_reduce_170, + 6, 106, :_reduce_171, + 1, 133, :_reduce_172, + 0, 133, :_reduce_173, + 1, 132, :_reduce_174, + 2, 132, :_reduce_175, + 1, 132, :_reduce_176, + 1, 134, :_reduce_none, + 1, 134, :_reduce_none, + 1, 134, :_reduce_none, + 3, 78, :_reduce_180, + 2, 78, :_reduce_181, + 1, 78, :_reduce_182, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 1, 135, :_reduce_none, + 2, 95, :_reduce_194, + 3, 95, :_reduce_195, + 2, 95, :_reduce_196, + 2, 94, :_reduce_197, + 1, 94, :_reduce_198, + 3, 141, :_reduce_none, + 1, 141, :_reduce_none, + 4, 140, :_reduce_201, + 1, 142, :_reduce_none, + 3, 142, :_reduce_203, + 3, 142, :_reduce_204, + 1, 143, :_reduce_none, + 4, 143, :_reduce_206, + 4, 143, :_reduce_207, + 1, 144, :_reduce_208, + 1, 144, :_reduce_209, + 3, 144, :_reduce_210, + 2, 139, :_reduce_211, + 1, 139, :_reduce_212, + 2, 96, :_reduce_213, + 1, 96, :_reduce_214, + 2, 138, :_reduce_215, + 1, 138, :_reduce_216, + 2, 137, :_reduce_217, + 1, 137, :_reduce_218, + 1, 137, :_reduce_219, + 1, 137, :_reduce_220, + 1, 137, :_reduce_221, + 1, 137, :_reduce_222, + 1, 137, :_reduce_223, + 1, 136, :_reduce_224, + 1, 145, :_reduce_225, + 1, 145, :_reduce_226, + 2, 70, :_reduce_227, + 1, 70, :_reduce_228 ] + +racc_reduce_n = 229 + +racc_shift_n = 360 + +racc_token_table = { + false => 0, + :error => 1, + :CHARSET_SYM => 2, + :IMPORT_SYM => 3, + :STRING => 4, + :SEMI => 5, + :IDENT => 6, + :S => 7, + :COMMA => 8, + :LBRACE => 9, + :RBRACE => 10, + :STAR => 11, + :HASH => 12, + :LSQUARE => 13, + :RSQUARE => 14, + :EQUAL => 15, + :INCLUDES => 16, + :DASHMATCH => 17, + :LPAREN => 18, + :RPAREN => 19, + :FUNCTION => 20, + :GREATER => 21, + :PLUS => 22, + :SLASH => 23, + :NUMBER => 24, + :MINUS => 25, + :LENGTH => 26, + :PERCENTAGE => 27, + :ANGLE => 28, + :TIME => 29, + :FREQ => 30, + :URI => 31, + :IMPORTANT_SYM => 32, + :MEDIA_SYM => 33, + :NOT => 34, + :ONLY => 35, + :AND => 36, + :NTH_PSEUDO_CLASS => 37, + :DOCUMENT_QUERY_SYM => 38, + :FUNCTION_NO_QUOTE => 39, + :TILDE => 40, + :PREFIXMATCH => 41, + :SUFFIXMATCH => 42, + :SUBSTRINGMATCH => 43, + :NOT_PSEUDO_CLASS => 44, + :KEYFRAMES_SYM => 45, + :MATCHES_PSEUDO_CLASS => 46, + :NAMESPACE_SYM => 47, + :MOZ_PSEUDO_ELEMENT => 48, + :RESOLUTION => 49, + :COLON => 50, + :SUPPORTS_SYM => 51, + :OR => 52, + :VARIABLE_NAME => 53, + :CALC_SYM => 54, + :FONTFACE_SYM => 55, + :UNICODE_RANGE => 56, + :RATIO => 57, + "|" => 58, + "." => 59 } + +racc_nt_base = 60 + +racc_use_result_var = true + +Racc_arg = [ + racc_action_table, + racc_action_check, + racc_action_default, + racc_action_pointer, + racc_goto_table, + racc_goto_check, + racc_goto_default, + racc_goto_pointer, + racc_nt_base, + racc_reduce_table, + racc_token_table, + racc_shift_n, + racc_reduce_n, + racc_use_result_var ] + +Racc_token_to_s_table = [ + "$end", + "error", + "CHARSET_SYM", + "IMPORT_SYM", + "STRING", + "SEMI", + "IDENT", + "S", + "COMMA", + "LBRACE", + "RBRACE", + "STAR", + "HASH", + "LSQUARE", + "RSQUARE", + "EQUAL", + "INCLUDES", + "DASHMATCH", + "LPAREN", + "RPAREN", + "FUNCTION", + "GREATER", + "PLUS", + "SLASH", + "NUMBER", + "MINUS", + "LENGTH", + "PERCENTAGE", + "ANGLE", + "TIME", + "FREQ", + "URI", + "IMPORTANT_SYM", + "MEDIA_SYM", + "NOT", + "ONLY", + "AND", + "NTH_PSEUDO_CLASS", + "DOCUMENT_QUERY_SYM", + "FUNCTION_NO_QUOTE", + "TILDE", + "PREFIXMATCH", + "SUFFIXMATCH", + "SUBSTRINGMATCH", + "NOT_PSEUDO_CLASS", + "KEYFRAMES_SYM", + "MATCHES_PSEUDO_CLASS", + "NAMESPACE_SYM", + "MOZ_PSEUDO_ELEMENT", + "RESOLUTION", + "COLON", + "SUPPORTS_SYM", + "OR", + "VARIABLE_NAME", + "CALC_SYM", + "FONTFACE_SYM", + "UNICODE_RANGE", + "RATIO", + "\"|\"", + "\".\"", + "$start", + "document", + "stylesheet", + "@1", + "charset", + "import", + "namespace", + "body", + "import_location", + "medium", + "ident", + "media_query_list", + "media_query", + "optional_only_or_not", + "media_type", + "optional_and_exprs", + "media_expr", + "optional_space", + "expr", + "resolution", + "ruleset", + "conditional_rule", + "keyframes_rule", + "fontface_rule", + "media", + "document_query", + "supports", + "body_in_media", + "empty_ruleset", + "start_media", + "start_document_query", + "start_document_query_pos", + "url_match_fns", + "url_match_fn", + "function_no_quote", + "function", + "uri", + "start_supports", + "supports_condition_root", + "supports_negation", + "supports_conjunction_or_disjunction", + "supports_condition_in_parens", + "supports_condition", + "supports_declaration_condition", + "supports_conjunction", + "supports_disjunction", + "declaration_internal", + "start_keyframes_rule", + "keyframes_blocks", + "keyframes_block", + "start_keyframes_block", + "declarations", + "keyframes_selectors", + "keyframes_selector", + "start_fontface_rule", + "start_selector", + "selectors", + "selector", + "simple_selector", + "combinator", + "element_name", + "hcap", + "simple_selectors", + "ident_with_namespace", + "hash", + "class", + "attrib", + "pseudo", + "any_number_of_idents", + "multiple_idents", + "one_or_more_semis", + "declaration", + "property", + "prio", + "operator", + "term", + "ratio", + "numeric", + "string", + "hexcolor", + "calc", + "uranges", + "calc_sum", + "calc_product", + "calc_value", + "unary_operator" ] + +Racc_debug_parser = false + +##### State transition tables end ##### + +# reduce 0 omitted + +module_eval(<<'.,.,', 'csspool.y', 26) + def _reduce_1(val, _values, result) + @handler.start_document + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 28) + def _reduce_2(val, _values, result) + @handler.end_document + result + end +.,., + +# reduce 3 omitted + +# reduce 4 omitted + +# reduce 5 omitted + +# reduce 6 omitted + +# reduce 7 omitted + +# reduce 8 omitted + +# reduce 9 omitted + +# reduce 10 omitted + +module_eval(<<'.,.,', 'csspool.y', 41) + def _reduce_11(val, _values, result) + @handler.charset interpret_string(val[1]), {} + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 45) + def _reduce_12(val, _values, result) + @handler.import_style val[2], val[1] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 48) + def _reduce_13(val, _values, result) + @handler.import_style [], val[1] + + result + end +.,., + +# reduce 14 omitted + +module_eval(<<'.,.,', 'csspool.y', 53) + def _reduce_15(val, _values, result) + result = Terms::String.new interpret_string val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 54) + def _reduce_16(val, _values, result) + result = Terms::URI.new interpret_uri val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 58) + def _reduce_17(val, _values, result) + @handler.namespace val[1], val[2] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 61) + def _reduce_18(val, _values, result) + @handler.namespace nil, val[1] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 66) + def _reduce_19(val, _values, result) + result = val[0] << MediaType.new(val[2]) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 69) + def _reduce_20(val, _values, result) + result = [MediaType.new(val[0])] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 73) + def _reduce_21(val, _values, result) + result = MediaQueryList.new([ val[0] ]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 74) + def _reduce_22(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 75) + def _reduce_23(val, _values, result) + result = MediaQueryList.new + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 78) + def _reduce_24(val, _values, result) + result = MediaQuery.new(val[0], val[1], val[2]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 79) + def _reduce_25(val, _values, result) + result = MediaQuery.new(nil, val[0], val[1]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 82) + def _reduce_26(val, _values, result) + result = :only + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 83) + def _reduce_27(val, _values, result) + result = :not + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 84) + def _reduce_28(val, _values, result) + result = nil + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 87) + def _reduce_29(val, _values, result) + result = MediaType.new(val[0]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 90) + def _reduce_30(val, _values, result) + result = MediaType.new(val[2]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 91) + def _reduce_31(val, _values, result) + result = MediaFeature.new(val[2], val[6][0]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 94) + def _reduce_32(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 95) + def _reduce_33(val, _values, result) + result = nil + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 98) + def _reduce_34(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 99) + def _reduce_35(val, _values, result) + result = [] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 103) + def _reduce_36(val, _values, result) + unit = val.first.gsub(/[\s\d.]/, '') + number = numeric(val.first) + result = Terms::Resolution.new(number, unit) + + result + end +.,., + +# reduce 37 omitted + +# reduce 38 omitted + +# reduce 39 omitted + +# reduce 40 omitted + +# reduce 41 omitted + +# reduce 42 omitted + +# reduce 43 omitted + +# reduce 44 omitted + +# reduce 45 omitted + +# reduce 46 omitted + +# reduce 47 omitted + +# reduce 48 omitted + +# reduce 49 omitted + +module_eval(<<'.,.,', 'csspool.y', 128) + def _reduce_50(val, _values, result) + @handler.end_media val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 132) + def _reduce_51(val, _values, result) + result = val[1] + @handler.start_media result + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 137) + def _reduce_52(val, _values, result) + @handler.end_document_query(before_pos(val), after_pos(val)) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 138) + def _reduce_53(val, _values, result) + @handler.end_document_query(before_pos(val), after_pos(val)) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 142) + def _reduce_54(val, _values, result) + @handler.start_document_query(val[1], after_pos(val)) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 147) + def _reduce_55(val, _values, result) + @handler.node_start_pos = before_pos(val) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 152) + def _reduce_56(val, _values, result) + result = [val[0], val[2]].flatten + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 155) + def _reduce_57(val, _values, result) + result = val + + result + end +.,., + +# reduce 58 omitted + +# reduce 59 omitted + +# reduce 60 omitted + +module_eval(<<'.,.,', 'csspool.y', 164) + def _reduce_61(val, _values, result) + @handler.end_supports + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 165) + def _reduce_62(val, _values, result) + @handler.end_supports + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 169) + def _reduce_63(val, _values, result) + @handler.start_supports val[1] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 173) + def _reduce_64(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 174) + def _reduce_65(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 175) + def _reduce_66(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 178) + def _reduce_67(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 179) + def _reduce_68(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 180) + def _reduce_69(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 183) + def _reduce_70(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 184) + def _reduce_71(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 187) + def _reduce_72(val, _values, result) + result = val.join('') + result + end +.,., + +# reduce 73 omitted + +# reduce 74 omitted + +module_eval(<<'.,.,', 'csspool.y', 194) + def _reduce_75(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 195) + def _reduce_76(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 198) + def _reduce_77(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 199) + def _reduce_78(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 202) + def _reduce_79(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 203) + def _reduce_80(val, _values, result) + result = val.join('') + result + end +.,., + +# reduce 81 omitted + +# reduce 82 omitted + +module_eval(<<'.,.,', 'csspool.y', 211) + def _reduce_83(val, _values, result) + @handler.start_keyframes_rule val[1] + + result + end +.,., + +# reduce 84 omitted + +# reduce 85 omitted + +module_eval(<<'.,.,', 'csspool.y', 219) + def _reduce_86(val, _values, result) + @handler.end_keyframes_block + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 220) + def _reduce_87(val, _values, result) + @handler.end_keyframes_block + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 224) + def _reduce_88(val, _values, result) + @handler.start_keyframes_block val[0] + + result + end +.,., + +# reduce 89 omitted + +module_eval(<<'.,.,', 'csspool.y', 229) + def _reduce_90(val, _values, result) + result = val[0] + ', ' + val[2] + + result + end +.,., + +# reduce 91 omitted + +# reduce 92 omitted + +module_eval(<<'.,.,', 'csspool.y', 235) + def _reduce_93(val, _values, result) + result = val[0].strip + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 238) + def _reduce_94(val, _values, result) + @handler.end_fontface_rule + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 239) + def _reduce_95(val, _values, result) + @handler.end_fontface_rule + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 243) + def _reduce_96(val, _values, result) + @handler.start_fontface_rule + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 248) + def _reduce_97(val, _values, result) + @handler.end_selector val.first + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 251) + def _reduce_98(val, _values, result) + @handler.end_selector val.first + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 256) + def _reduce_99(val, _values, result) + start = @handler.start_selector([]) + @handler.end_selector(start) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 261) + def _reduce_100(val, _values, result) + result = val.last + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 263) + def _reduce_101(val, _values, result) + @handler.start_selector val.first + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 269) + def _reduce_102(val, _values, result) + sel = Selector.new(val.first, {}) + result = [sel].concat(val[2]) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 274) + def _reduce_103(val, _values, result) + result = [Selector.new(val.first, {})] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 280) + def _reduce_104(val, _values, result) + val.flatten! + val[2].combinator = val.delete_at 1 + result = val + + result + end +.,., + +# reduce 105 omitted + +module_eval(<<'.,.,', 'csspool.y', 287) + def _reduce_106(val, _values, result) + result = :s + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 288) + def _reduce_107(val, _values, result) + result = :> + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 289) + def _reduce_108(val, _values, result) + result = :+ + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 290) + def _reduce_109(val, _values, result) + result = :~ + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 294) + def _reduce_110(val, _values, result) + selector = val.first + selector.additional_selectors = val.last + result = [selector] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 298) + def _reduce_111(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 301) + def _reduce_112(val, _values, result) + ss = Selectors::Simple.new nil, nil + ss.additional_selectors = val.flatten + result = [ss] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 307) + def _reduce_113(val, _values, result) + result = [val[0], val[2]].flatten + result + end +.,., + +# reduce 114 omitted + +module_eval(<<'.,.,', 'csspool.y', 311) + def _reduce_115(val, _values, result) + result = [interpret_identifier(val[0]), nil] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 312) + def _reduce_116(val, _values, result) + result = [interpret_identifier(val[2]), interpret_identifier(val[0])] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 313) + def _reduce_117(val, _values, result) + result = [interpret_identifier(val[1]), nil] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 314) + def _reduce_118(val, _values, result) + result = [interpret_identifier(val[2]), '*'] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 317) + def _reduce_119(val, _values, result) + result = Selectors::Type.new val.first[0], nil, val.first[1] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 318) + def _reduce_120(val, _values, result) + result = Selectors::Universal.new val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 319) + def _reduce_121(val, _values, result) + result = Selectors::Universal.new val[1] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 320) + def _reduce_122(val, _values, result) + result = Selectors::Universal.new val[2], nil, val[0] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 321) + def _reduce_123(val, _values, result) + result = Selectors::Universal.new val[2], nil, interpret_identifier(val[0]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 324) + def _reduce_124(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 325) + def _reduce_125(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 326) + def _reduce_126(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 327) + def _reduce_127(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 328) + def _reduce_128(val, _values, result) + result = val.flatten + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 329) + def _reduce_129(val, _values, result) + result = val.flatten + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 330) + def _reduce_130(val, _values, result) + result = val.flatten + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 331) + def _reduce_131(val, _values, result) + result = val.flatten + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 335) + def _reduce_132(val, _values, result) + result = Selectors::Id.new interpret_identifier val.first.sub(/^#/, '') + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 339) + def _reduce_133(val, _values, result) + result = Selectors::Class.new interpret_identifier val.last + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 344) + def _reduce_134(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_identifier(val[3]), + Selectors::Attribute::EQUALS, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 352) + def _reduce_135(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_string(val[3]), + Selectors::Attribute::EQUALS, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 360) + def _reduce_136(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_string(val[3]), + Selectors::Attribute::INCLUDES, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 368) + def _reduce_137(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_identifier(val[3]), + Selectors::Attribute::INCLUDES, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 376) + def _reduce_138(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_identifier(val[3]), + Selectors::Attribute::DASHMATCH, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 384) + def _reduce_139(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_string(val[3]), + Selectors::Attribute::DASHMATCH, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 392) + def _reduce_140(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_identifier(val[3]), + Selectors::Attribute::PREFIXMATCH, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 400) + def _reduce_141(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_string(val[3]), + Selectors::Attribute::PREFIXMATCH, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 408) + def _reduce_142(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_identifier(val[3]), + Selectors::Attribute::SUFFIXMATCH, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 416) + def _reduce_143(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_string(val[3]), + Selectors::Attribute::SUFFIXMATCH, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 424) + def _reduce_144(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_identifier(val[3]), + Selectors::Attribute::SUBSTRINGMATCH, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 432) + def _reduce_145(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + interpret_string(val[3]), + Selectors::Attribute::SUBSTRINGMATCH, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 440) + def _reduce_146(val, _values, result) + result = Selectors::Attribute.new( + val[1][0], + nil, + Selectors::Attribute::SET, + val[1][1] + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 450) + def _reduce_147(val, _values, result) + result = Selectors::pseudo interpret_identifier(val[1]) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 453) + def _reduce_148(val, _values, result) + result = Selectors::PseudoElement.new( + interpret_identifier(val[2]) + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 458) + def _reduce_149(val, _values, result) + result = Selectors::PseudoClass.new( + interpret_identifier(val[1].sub(/\($/, '')), + '' + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 464) + def _reduce_150(val, _values, result) + result = Selectors::PseudoClass.new( + interpret_identifier(val[1].sub(/\($/, '')), + interpret_identifier(val[2]) + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 470) + def _reduce_151(val, _values, result) + result = Selectors::PseudoClass.new( + 'not', + val[2].first.to_s + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 476) + def _reduce_152(val, _values, result) + result = Selectors::PseudoClass.new( + interpret_identifier(val[1].sub(/\(.*/, '')), + interpret_identifier(val[1].sub(/.*\(/, '').sub(/\).*/, '')) + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 482) + def _reduce_153(val, _values, result) + result = Selectors::PseudoClass.new( + val[1].split('(').first.strip, + val[2].join(', ') + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 488) + def _reduce_154(val, _values, result) + result = Selectors::PseudoElement.new( + interpret_identifier(val[1].sub(/\($/, '')) + ) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 493) + def _reduce_155(val, _values, result) + result = Selectors::PseudoElement.new( + interpret_identifier(val[2].sub(/\($/, '')) + ) + + result + end +.,., + +# reduce 156 omitted + +# reduce 157 omitted + +# reduce 158 omitted + +# reduce 159 omitted + +# reduce 160 omitted + +# reduce 161 omitted + +# reduce 162 omitted + +# reduce 163 omitted + +# reduce 164 omitted + +# reduce 165 omitted + +# reduce 166 omitted + +module_eval(<<'.,.,', 'csspool.y', 519) + def _reduce_167(val, _values, result) + @handler.property val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 523) + def _reduce_168(val, _values, result) + result = Declaration.new(val.first, val[2], val[3]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 525) + def _reduce_169(val, _values, result) + result = Declaration.new(val.first, val[3], val[4]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 527) + def _reduce_170(val, _values, result) + result = Declaration.new(val.first, val[3], val[4]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 529) + def _reduce_171(val, _values, result) + result = Declaration.new(val.first, val[4], val[5]) + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 532) + def _reduce_172(val, _values, result) + result = true + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 533) + def _reduce_173(val, _values, result) + result = false + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 536) + def _reduce_174(val, _values, result) + result = interpret_identifier val[0] + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 537) + def _reduce_175(val, _values, result) + result = interpret_identifier val.join + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 538) + def _reduce_176(val, _values, result) + result = interpret_identifier val[0] + result + end +.,., + +# reduce 177 omitted + +# reduce 178 omitted + +# reduce 179 omitted + +module_eval(<<'.,.,', 'csspool.y', 547) + def _reduce_180(val, _values, result) + result = [val.first, val.last].flatten + val.last.first.operator = val[1] + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 550) + def _reduce_181(val, _values, result) + result = val.flatten + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 551) + def _reduce_182(val, _values, result) + result = val + result + end +.,., + +# reduce 183 omitted + +# reduce 184 omitted + +# reduce 185 omitted + +# reduce 186 omitted + +# reduce 187 omitted + +# reduce 188 omitted + +# reduce 189 omitted + +# reduce 190 omitted + +# reduce 191 omitted + +# reduce 192 omitted + +# reduce 193 omitted + +module_eval(<<'.,.,', 'csspool.y', 567) + def _reduce_194(val, _values, result) + result = val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 569) + def _reduce_195(val, _values, result) + name = interpret_identifier val.first.sub(/\($/, '') + if name == 'rgb' + result = Terms::Rgb.new(*val[1]) + else + result = Terms::Function.new name, val[1] + end + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 577) + def _reduce_196(val, _values, result) + name = interpret_identifier val.first.sub(/\($/, '') + result = Terms::Function.new name + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 582) + def _reduce_197(val, _values, result) + result = val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 584) + def _reduce_198(val, _values, result) + parts = val.first.split('(') + name = interpret_identifier parts.first + result = Terms::Function.new(name, [Terms::String.new(interpret_string_no_quote(parts.last))]) + + result + end +.,., + +# reduce 199 omitted + +# reduce 200 omitted + +module_eval(<<'.,.,', 'csspool.y', 595) + def _reduce_201(val, _values, result) + result = Terms::Math.new(val.first.split('(').first, val[1]) + + result + end +.,., + +# reduce 202 omitted + +module_eval(<<'.,.,', 'csspool.y', 601) + def _reduce_203(val, _values, result) + val.insert(1, ' '); result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 602) + def _reduce_204(val, _values, result) + val.insert(1, ' '); result = val.join('') + result + end +.,., + +# reduce 205 omitted + +module_eval(<<'.,.,', 'csspool.y', 606) + def _reduce_206(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 607) + def _reduce_207(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 610) + def _reduce_208(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 611) + def _reduce_209(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 612) + def _reduce_210(val, _values, result) + result = val.join('') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 615) + def _reduce_211(val, _values, result) + result = val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 616) + def _reduce_212(val, _values, result) + result = Terms::Hash.new val.first.sub(/^#/, '') + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 619) + def _reduce_213(val, _values, result) + result = val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 620) + def _reduce_214(val, _values, result) + result = Terms::URI.new interpret_uri val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 623) + def _reduce_215(val, _values, result) + result = val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 624) + def _reduce_216(val, _values, result) + result = Terms::String.new interpret_string val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 628) + def _reduce_217(val, _values, result) + result = val[1] + val[1].unary_operator = val.first + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 632) + def _reduce_218(val, _values, result) + result = Terms::Number.new numeric val.first + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 635) + def _reduce_219(val, _values, result) + result = Terms::Number.new numeric(val.first), nil, '%' + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 638) + def _reduce_220(val, _values, result) + unit = val.first.gsub(/[\s\d.]/, '') + result = Terms::Number.new numeric(val.first), nil, unit + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 642) + def _reduce_221(val, _values, result) + unit = val.first.gsub(/[\s\d.]/, '') + result = Terms::Number.new numeric(val.first), nil, unit + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 646) + def _reduce_222(val, _values, result) + unit = val.first.gsub(/[\s\d.]/, '') + result = Terms::Number.new numeric(val.first), nil, unit + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 650) + def _reduce_223(val, _values, result) + unit = val.first.gsub(/[\s\d.]/, '') + result = Terms::Number.new numeric(val.first), nil, unit + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 656) + def _reduce_224(val, _values, result) + result = Terms::Ratio.new(val[0], val[1]) + + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 660) + def _reduce_225(val, _values, result) + result = :minus + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 661) + def _reduce_226(val, _values, result) + result = :plus + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 664) + def _reduce_227(val, _values, result) + result = val.first + result + end +.,., + +module_eval(<<'.,.,', 'csspool.y', 665) + def _reduce_228(val, _values, result) + result = Terms::Ident.new interpret_identifier val.first + result + end +.,., + +def _reduce_none(val, _values, result) + val[0] +end + + end # class Parser + end # module CSS + end # module CSSPool |