Sha256: 4fdc0464e35a28c6045f339daefdafdda6c090a4f44a0a3ab649f800f0cc5257

Contents?: true

Size: 646 Bytes

Versions: 5

Compression:

Stored size: 646 Bytes

Contents

# Ruby stlib
require 'kconv'
require 'matrix'
require 'singleton'
require 'yaml'

$:.unshift(File.dirname(__FILE__))
# Q core
require 'qlang/meta_info'
require 'qlang/utils/ruby_ext'
require 'qlang/lexer'
require 'qlang/parser'

module Qlang
  $meta_info = MetaInfo.instance

  class << self

    def compile(str)
      lexed = Lexer.execute(str)
      Kconv.tosjis(Parser.execute(lexed))
    end

    $meta_info.langs_hash.keys.each do |lang_name|
      define_method("to_#{lang_name}") do |*opts|
        $meta_info.lang = lang_name.to_sym
        $meta_info.opts = opts
        Qlang
      end
    end

  end

end

# Make alias as Q
Q = Qlang

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
hilbert-0.0.2700000 lib/qlang.rb
qlang-0.0.27182124 lib/qlang.rb
qlang-0.0.27182123 lib/qlang.rb
qlang-0.0.27182122 lib/qlang.rb
qlang-0.0.27182121 lib/qlang.rb