lib/finitio.rb in finitio-0.4.1 vs lib/finitio.rb in finitio-0.5.0

- old
+ new

@@ -1,66 +1,34 @@ require 'set' require 'time' module Finitio - DSL_METHODS = [ - :attribute, - :heading, - :constraints, - :any, - :builtin, - :adt, - :subtype, - :union, - :seq, - :set, - :tuple, - :relation, - :type - ] - require_relative "finitio/version" require_relative "finitio/errors" require_relative "finitio/support" require_relative 'finitio/type' - require_relative 'finitio/data_type' require_relative 'finitio/system' - DEFAULT_FACTORY = TypeFactory.new - IDENTITY = ->(object){ object } - DSL_METHODS.each do |meth| - define_method(meth) do |*args, &bl| - DEFAULT_FACTORY.public_send(meth, *args, &bl) - end + def parse(source) + require "finitio/syntax" + Syntax.parse(source) end - def parse(source) + def system(source) require "finitio/syntax" Syntax.compile(source) end def ast(source) require "finitio/syntax" Syntax.ast(source) end - def system(identifier) - f = File.expand_path("../finitio/#{identifier}.fio", __FILE__) - if File.exists?(f) - parse(File.read(f)) - else - raise Error, "Unknown system #{identifier}" - end - end - - def definition_files(of) - dir = File.expand_path("../finitio/#{of}", __FILE__) - Dir.glob("#{dir}/*.fio") - end - extend self - DEFAULT_SYSTEM = system('Finitio/default') + DEFAULT_SYSTEM = system(File.read( + File.expand_path('../finitio/Finitio/default.fio', __FILE__) + )) end # module Finitio