Sha256: 407bd99d3993f0e2b58b4456e85464d9d9fd52cd75348c1fc3e0c5fb5afa9ccc

Contents?: true

Size: 710 Bytes

Versions: 4

Compression:

Stored size: 710 Bytes

Contents

require 'pry'
module Qlang
  module Lexer
    class WrapLexer < Base
      rule(%r@#{FUNCCV}#{ANYSP}=#{ANYSP}#{NONL}+@) { :def_func }
      rule(%r@#{FUNCCN}@) { :eval_func }
      rule(/S#{ANYSP}#{LPRN}#{ANYSTR}#{RPRN}\[#{ANYSTR}\]/) { :integral }
      rule(/d\/d#{VAR} .*/) { :differential }
      rule(%r@#{LPRN}#{NUMS_BY_SP}#{RPRN}@) { :vector }
      rule(%r@#{LPRN}#{NUMS_BY_SP_BY_SCLN}#{RPRN}t@) { :tmatrix }
      rule(%r@#{LPRN}#{NUMS_BY_SP_BY_SCLN}#{RPRN}@) { :matrix }


      rule(/\(/) { :LPRN }
      rule(/\)/) { :RPRN }
      rule(/\{/) { :LBRC }
      rule(/\}/) { :RBRC }

      rule(/[ \t\f]/)

      rule(/(\r|\n)+/) { :NLIN }

      rule(/[^\(\)\{\}(\n\n)]+/) { :CONT }
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
qlang-0.0.27180000 lib/qlang/lexer/wrap_lexer.rb
qlang-0.0.27100000 lib/qlang/lexer/wrap_lexer.rb
qlang-0.0.27000000 lib/qlang/lexer/wrap_lexer.rb
qlang-0.0.27 lib/qlang/lexer/wrap_lexer.rb