Sha256: e28ed60b2c0e7acba278a6417fee64c74136d1fedceeb474ab7beb322ea72411

Contents?: true

Size: 686 Bytes

Versions: 4

Compression:

Stored size: 686 Bytes

Contents

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

$:.unshift(File.dirname(__FILE__))
# Hilbert core
require 'hilbert/meta_info'
require 'hilbert/utils/ruby_ext'
require 'hilbert/lexer'
require 'hilbert/parser'
require 'hilbert/world'

module Hilbert
  $meta_info = MetaInfo.instance
  $world     = World::Entity

  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
        Hilbert
      end
    end
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
hilbert-0.0.2700300 lib/hilbert.rb
hilbert-0.0.2700210 lib/hilbert.rb
hilbert-0.0.2700110 lib/hilbert.rb
hilbert-0.0.2700100 lib/hilbert.rb