Sha256: c1edd56e38b2567fae443260307d29d991de8d8c0da680237ca68f291536ec42
Contents?: true
Size: 1.06 KB
Versions: 39
Compression:
Stored size: 1.06 KB
Contents
require 'bakery/model/metamodel' require 'bakery/model/language' require 'bake/version' require 'rgen/environment' require 'rgen/fragment/fragmented_model' require 'rtext/default_loader' require 'cxxproject/utils/exit_helper' require 'cxxproject/utils/printer' module Cxxproject class BakeryLoader attr_reader :model def initialize(options) @env = RGen::Environment.new @options = options @model = RGen::Fragment::FragmentedModel.new(:env => @env) end def load(filename) sumErrors = 0 if not File.exists?filename Printer.printError "Error: #{filename} does not exist" ExitHelper.exit(1) end loader = RText::DefaultLoader.new( Cxxproject::BakeryLanguage, @model, :file_provider => proc { [filename] }, :cache => @DumpFileCache) loader.load() f = @model.fragments[0] f.data[:problems].each do |p| Printer.printError "Error: "+p.file+"("+p.line.to_s+"): "+p.message end if f.data[:problems].length > 0 ExitHelper.exit(1) end return @env end end end
Version data entries
39 entries across 39 versions & 1 rubygems