Sha256: ffacb242b88016443f35a21cf7998a97dd6ffe6425cba33097f78a484442c7cb

Contents?: true

Size: 1.54 KB

Versions: 4

Compression:

Stored size: 1.54 KB

Contents

require 'rgen/metamodel_builder'
require 'rgen/metamodel_builder/data_types'

module Bake

  module BakeryModel
    extend RGen::MetamodelBuilder::ModuleExtension

    class ModelElement < RGen::MetamodelBuilder::MMBase
      abstract
      has_attr 'line_number', Integer do
        annotation :details => {'internal' => 'true'}
      end
      has_attr 'file_name', String do
        annotation :details => {'internal' => 'true'}
      end
    end

    class Project < ModelElement
      has_attr 'name', String, :defaultValueLiteral => ""
      has_attr 'config', String, :defaultValueLiteral => ""
      has_attr 'args', String, :defaultValueLiteral => ""
    end
    class Exclude < ModelElement
      has_attr 'name', String, :defaultValueLiteral => ""
      has_attr 'config', String, :defaultValueLiteral => ""
    end

    class ExcludeDir < ModelElement
      has_attr 'name', String, :defaultValueLiteral => ""
    end
    class SubCollection < ModelElement
      has_attr 'name', String, :defaultValueLiteral => ""
    end
    class Collection < ModelElement
      has_attr 'name', String, :defaultValueLiteral => ""
      contains_many 'project', Project, 'collection'
      contains_many 'exclude', Exclude, 'collection'
      contains_many 'exclude_dir', ExcludeDir, 'collection'
      contains_many 'collections', SubCollection, 'collection'
    end

    module Project::ClassModule
      def isFound
        @isFound ||= false
      end
      def found
        @isFound = true
      end
    end

  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
bake-toolkit-2.69.0 lib/bakery/model/metamodel.rb
bake-toolkit-2.68.1 lib/bakery/model/metamodel.rb
bake-toolkit-2.68.0 lib/bakery/model/metamodel.rb
bake-toolkit-2.67.0 lib/bakery/model/metamodel.rb