tnantoka/plate

View on GitHub
lib/plate/parser.rb

Summary

Maintainability
F
3 days
Test Coverage
#
# DO NOT MODIFY!!!!
# This file is automatically generated by Racc 1.4.12
# from Racc grammer file "".
#

require 'racc/parser.rb'

require 'plate/lexer'
require 'plate/nodes'

module Plate
  class Parser < Racc::Parser

module_eval(<<'...end grammar.y/module_eval...', 'grammar.y', 138)
  def parse(code)
    @tokens = Lexer.new.tokenize(code)
    do_parse
  end
  
  def next_token
    @tokens.shift
  end
...end grammar.y/module_eval...
##### State transition tables begin ###

racc_action_table = [
    20,    22,    18,    19,    21,    29,    48,    63,    26,    27,
    28,    30,    31,    32,    43,    23,    18,    19,    43,    24,
    25,    67,    74,    20,    22,    18,    19,    21,    29,    18,
    19,    26,    27,    28,    30,    31,    32,    43,    23,    61,
    20,    22,    24,    25,    21,    29,    77,    78,    26,    27,
    28,    30,    31,    32,    41,    23,    18,    19,    43,    24,
    25,    20,    22,    18,    19,    21,    29,    40,    46,    26,
    27,    28,    30,    31,    32,    66,    23,    54,    68,    47,
    24,    25,    20,    22,    18,    19,    21,    29,    52,    72,
    26,    27,    28,    30,    31,    32,    72,    23,    33,    43,
    55,    24,    25,    20,    22,    18,    19,    21,    29,   nil,
   nil,    26,    27,    28,    30,    31,    32,   nil,    23,   nil,
   nil,   nil,    24,    25,    20,    22,    18,    19,    21,    29,
   nil,   nil,    26,    27,    28,    30,    31,    32,   nil,    23,
   nil,    20,    22,    24,    25,    21,    29,   nil,   nil,    26,
    27,    28,    30,    31,    32,   nil,    23,   nil,    20,    22,
    24,    25,    21,    29,   nil,   nil,    26,    27,    28,    30,
    31,    32,   nil,    23,   nil,   nil,   nil,    24,    25,    20,
    22,    18,    19,    21,    29,   nil,   nil,    26,    27,    28,
    30,    31,    32,   nil,    23,   nil,    20,    22,    24,    25,
    21,    29,   nil,   nil,    26,    27,    28,    30,    31,    32,
   nil,    23,   nil,    20,    22,    24,    25,    21,    29,   nil,
   nil,    26,    27,    28,    30,    31,    32,   nil,    23,   nil,
    20,    22,    24,    25,    21,    29,   nil,   nil,    26,    27,
    28,    30,    31,    32,   nil,    23,   nil,    20,    22,    24,
    25,    21,    29,   nil,   nil,    26,    27,    28,    30,    31,
    32,   nil,    23,   nil,   nil,   nil,    24,    25 ]

racc_action_check = [
    72,    72,    56,    56,    72,    72,    33,    56,    72,    72,
    72,    72,    72,    72,    27,    72,    64,    64,    26,    72,
    72,    64,    72,    54,    54,    66,    66,    54,    54,    68,
    68,    54,    54,    54,    54,    54,    54,    50,    54,    52,
    61,    61,    54,    54,    61,    61,    75,    75,    61,    61,
    61,    61,    61,    61,    25,    61,     2,     2,    28,    61,
    61,    22,    22,    22,    22,    22,    22,    24,    30,    22,
    22,    22,    22,    22,    22,    62,    22,    40,    65,    31,
    22,    22,    23,    23,    23,    23,    23,    23,    37,    69,
    23,    23,    23,    23,    23,    23,    70,    23,     1,    36,
    41,    23,    23,    57,    57,    57,    57,    57,    57,   nil,
   nil,    57,    57,    57,    57,    57,    57,   nil,    57,   nil,
   nil,   nil,    57,    57,     0,     0,     0,     0,     0,     0,
   nil,   nil,     0,     0,     0,     0,     0,     0,   nil,     0,
   nil,    47,    47,     0,     0,    47,    47,   nil,   nil,    47,
    47,    47,    47,    47,    47,   nil,    47,   nil,    46,    46,
    47,    47,    46,    46,   nil,   nil,    46,    46,    46,    46,
    46,    46,   nil,    46,   nil,   nil,   nil,    46,    46,    43,
    43,    43,    43,    43,    43,   nil,   nil,    43,    43,    43,
    43,    43,    43,   nil,    43,   nil,    34,    34,    43,    43,
    34,    34,   nil,   nil,    34,    34,    34,    34,    34,    34,
   nil,    34,   nil,    38,    38,    34,    34,    38,    38,   nil,
   nil,    38,    38,    38,    38,    38,    38,   nil,    38,   nil,
    35,    35,    38,    38,    35,    35,   nil,   nil,    35,    35,
    35,    35,    35,    35,   nil,    35,   nil,    78,    78,    35,
    35,    78,    78,   nil,   nil,    78,    78,    78,    78,    78,
    78,   nil,    78,   nil,   nil,   nil,    78,    78 ]

racc_action_pointer = [
   122,    98,    52,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    59,    80,    49,    38,    10,     6,    50,   nil,
    42,    53,   nil,     6,   194,   228,    91,    70,   211,   nil,
    58,    78,   nil,   177,   nil,   nil,   156,   139,   nil,   nil,
    29,   nil,    20,   nil,    21,   nil,    -2,   101,   nil,   nil,
   nil,    38,    55,   nil,    12,    58,    21,   nil,    25,    66,
    73,   nil,    -2,   nil,   nil,    22,   nil,   nil,   245,   nil ]

racc_action_default = [
    -1,   -50,    -2,    -3,    -6,    -7,    -8,    -9,   -10,   -11,
   -12,   -13,   -14,   -15,   -16,   -17,   -18,   -19,   -20,   -21,
   -22,   -23,   -50,   -50,   -50,   -50,   -50,   -50,   -50,   -40,
   -50,   -50,   -49,   -50,    -5,   -50,   -27,   -50,   -50,   -32,
   -50,   -50,   -37,   -50,   -38,   -39,   -50,   -50,    80,    -4,
   -26,   -25,   -50,   -31,   -50,   -36,   -50,    -6,   -47,   -48,
   -24,   -50,   -50,   -42,   -50,   -50,   -35,   -41,   -30,   -34,
   -29,   -33,   -50,   -28,   -43,   -50,   -45,   -44,   -50,   -46 ]

racc_goto_table = [
     4,     2,     1,    36,    39,    71,    73,    42,    44,    45,
    37,    75,   nil,   nil,   nil,    49,    50,    51,   nil,    53,
   nil,   nil,    35,    38,   nil,   nil,   nil,    58,    59,   nil,
   nil,    60,   nil,   nil,   nil,    62,   nil,   nil,   nil,   nil,
   nil,   nil,    65,    57,    56,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,    76,   nil,   nil,   nil,     4,    64,    79,
   nil,   nil,   nil,   nil,   nil,   nil,    69,   nil,    70 ]

racc_goto_check = [
     4,     2,     1,     3,     3,    20,    20,    18,    18,    18,
    19,    21,   nil,   nil,   nil,     3,     3,    18,   nil,     3,
   nil,   nil,     4,     4,   nil,   nil,   nil,     3,     3,   nil,
   nil,    18,   nil,   nil,   nil,     3,   nil,   nil,   nil,   nil,
   nil,   nil,     3,     4,     2,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,     3,   nil,   nil,   nil,     4,     2,     3,
   nil,   nil,   nil,   nil,   nil,   nil,     4,   nil,     4 ]

racc_goto_pointer = [
   nil,     2,     1,   -19,     0,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   -19,   -13,
   -64,   -61 ]

racc_goto_default = [
   nil,   nil,   nil,     3,    34,     5,     6,     7,     8,     9,
    10,    11,    12,    13,    14,    15,    16,    17,   nil,   nil,
   nil,   nil ]

racc_reduce_table = [
  0, 0, :racc_error,
  0, 28, :_reduce_1,
  1, 28, :_reduce_2,
  1, 29, :_reduce_3,
  3, 29, :_reduce_4,
  2, 29, :_reduce_5,
  1, 29, :_reduce_6,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 30, :_reduce_none,
  1, 31, :_reduce_none,
  1, 31, :_reduce_none,
  1, 33, :_reduce_22,
  1, 32, :_reduce_23,
  4, 34, :_reduce_24,
  3, 34, :_reduce_25,
  3, 34, :_reduce_26,
  2, 34, :_reduce_27,
  8, 35, :_reduce_28,
  7, 35, :_reduce_29,
  6, 35, :_reduce_30,
  2, 46, :_reduce_31,
  1, 46, :_reduce_32,
  7, 36, :_reduce_33,
  6, 36, :_reduce_34,
  5, 36, :_reduce_35,
  3, 44, :_reduce_36,
  2, 38, :_reduce_37,
  2, 39, :_reduce_38,
  2, 40, :_reduce_39,
  1, 37, :_reduce_40,
  4, 45, :_reduce_41,
  3, 45, :_reduce_42,
  2, 47, :_reduce_43,
  3, 47, :_reduce_44,
  1, 48, :_reduce_45,
  3, 48, :_reduce_46,
  3, 41, :_reduce_47,
  3, 42, :_reduce_48,
  1, 43, :_reduce_49 ]

racc_reduce_n = 50

racc_shift_n = 80

racc_token_table = {
  false => 0,
  :error => 1,
  :FRONT_MATTER => 2,
  :HEADER => 3,
  :NEWLINE => 4,
  :TERMINATOR => 5,
  :STRING => 6,
  :IDENTIFIER => 7,
  :INDENT => 8,
  :DEDENT => 9,
  :P => 10,
  :DIV => 11,
  :CLASS => 12,
  :STYLE => 13,
  :SCRIPT => 14,
  :ATTRIBUTE => 15,
  :HIGHLIGHT => 16,
  "[" => 17,
  "]" => 18,
  "(" => 19,
  ")" => 20,
  "![" => 21,
  "```" => 22,
  "{" => 23,
  "}" => 24,
  "," => 25,
  ":" => 26 }

racc_nt_base = 27

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",
  "FRONT_MATTER",
  "HEADER",
  "NEWLINE",
  "TERMINATOR",
  "STRING",
  "IDENTIFIER",
  "INDENT",
  "DEDENT",
  "P",
  "DIV",
  "CLASS",
  "STYLE",
  "SCRIPT",
  "ATTRIBUTE",
  "HIGHLIGHT",
  "\"[\"",
  "\"]\"",
  "\"(\"",
  "\")\"",
  "\"![\"",
  "\"```\"",
  "\"{\"",
  "\"}\"",
  "\",\"",
  "\":\"",
  "$start",
  "Program",
  "Expressions",
  "Expression",
  "Terminator",
  "Literal",
  "FrontMatter",
  "Header",
  "Link",
  "Image",
  "GetLocal",
  "Paragraph",
  "Div",
  "Class",
  "Style",
  "Script",
  "Attribute",
  "Code",
  "Block",
  "LinkContent",
  "Attributes",
  "AttrList" ]

Racc_debug_parser = false

##### State transition tables end #####

# reduce 0 omitted

module_eval(<<'.,.,', 'grammar.y', 16)
  def _reduce_1(val, _values, result)
     result = Nodes.new([]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 17)
  def _reduce_2(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 21)
  def _reduce_3(val, _values, result)
     result = Nodes.new(val) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 22)
  def _reduce_4(val, _values, result)
     result = val[0] << val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 23)
  def _reduce_5(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 24)
  def _reduce_6(val, _values, result)
     result = Nodes.new([]) 
    result
  end
.,.,

# reduce 7 omitted

# reduce 8 omitted

# reduce 9 omitted

# reduce 10 omitted

# reduce 11 omitted

# reduce 12 omitted

# reduce 13 omitted

# reduce 14 omitted

# reduce 15 omitted

# reduce 16 omitted

# reduce 17 omitted

# reduce 18 omitted

# reduce 19 omitted

# reduce 20 omitted

# reduce 21 omitted

module_eval(<<'.,.,', 'grammar.y', 49)
  def _reduce_22(val, _values, result)
     result = FrontMatterNode.new(val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 53)
  def _reduce_23(val, _values, result)
     result = StringNode.new(val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 57)
  def _reduce_24(val, _values, result)
     result = HeaderNode.new(val[0].size, val[2], val[3]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 58)
  def _reduce_25(val, _values, result)
     result = HeaderNode.new(val[0].size, val[1], val[2]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 59)
  def _reduce_26(val, _values, result)
     result = HeaderNode.new(val[0].size, val[2], Nodes.new([])) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 60)
  def _reduce_27(val, _values, result)
     result = HeaderNode.new(val[0].size, val[1], Nodes.new([])) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 65)
  def _reduce_28(val, _values, result)
     result = LinkNode.new(val[1], val[4], val[7]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 67)
  def _reduce_29(val, _values, result)
     result = LinkNode.new(val[1], val[4], []) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 68)
  def _reduce_30(val, _values, result)
     result = LinkNode.new(val[1], val[4], []) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 72)
  def _reduce_31(val, _values, result)
     result = val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 73)
  def _reduce_32(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 78)
  def _reduce_33(val, _values, result)
     result = ImageNode.new(val[3], val[6]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 80)
  def _reduce_34(val, _values, result)
     result = ImageNode.new(val[3], []) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 81)
  def _reduce_35(val, _values, result)
     result = ImageNode.new(val[3], []) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 85)
  def _reduce_36(val, _values, result)
     result = HighlightNode.new(val[1]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 89)
  def _reduce_37(val, _values, result)
     result = ParagraphNode.new(val[1]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 93)
  def _reduce_38(val, _values, result)
     result = DivNode.new(val[1]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 97)
  def _reduce_39(val, _values, result)
     result = ClassNode.new(val[0], val[1]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 101)
  def _reduce_40(val, _values, result)
     result = GetLocalNode.new(val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 105)
  def _reduce_41(val, _values, result)
     result = val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 106)
  def _reduce_42(val, _values, result)
     result = val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 110)
  def _reduce_43(val, _values, result)
     result = [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 111)
  def _reduce_44(val, _values, result)
     result = val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 115)
  def _reduce_45(val, _values, result)
     result = val 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 116)
  def _reduce_46(val, _values, result)
     result = val[0] << val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 120)
  def _reduce_47(val, _values, result)
     result = StyleNode.new(val[0], val[2]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 124)
  def _reduce_48(val, _values, result)
     result = ScriptNode.new(val[0], val[2]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'grammar.y', 128)
  def _reduce_49(val, _values, result)
     result = AttributeNode.new(val[0]) 
    result
  end
.,.,

def _reduce_none(val, _values, result)
  val[0]
end

  end   # class Parser
  end   # module Plate