Sha256: 58f4a3a96e1002240ecfea39f9e435856d926ad7b11eaf246a9752f1f0063375

Contents?: true

Size: 872 Bytes

Versions: 14

Compression:

Stored size: 872 Bytes

Contents

module Expressir
  module Model
    class Attribute < ModelElement
      include Identifier

      EXPLICIT = :EXPLICIT
      DERIVED = :DERIVED
      INVERSE = :INVERSE

      model_attr_accessor :kind
      model_attr_accessor :supertype_attribute
      model_attr_accessor :optional
      model_attr_accessor :type
      model_attr_accessor :expression

      def initialize(options = {})
        @id = options[:id]
        @remarks = options[:remarks] || []
        @remark_items = options[:remark_items] || []
        @source = options[:source]

        @kind = options[:kind]
        @supertype_attribute = options[:supertype_attribute]
        @optional = options[:optional]
        @type = options[:type]
        @expression = options[:expression]

        super
      end

      def children
        [
          *remark_items
        ]
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
expressir-1.0.0 lib/expressir/model/attribute.rb
expressir-1.0.0-x86_64-linux lib/expressir/model/attribute.rb
expressir-1.0.0-x86_64-darwin lib/expressir/model/attribute.rb
expressir-1.0.0-x86-mingw32 lib/expressir/model/attribute.rb
expressir-1.0.0-x86-linux lib/expressir/model/attribute.rb
expressir-1.0.0-x64-mingw32 lib/expressir/model/attribute.rb
expressir-1.0.0-arm64-darwin lib/expressir/model/attribute.rb
expressir-0.2.27 lib/expressir/model/attribute.rb
expressir-0.2.27-x86_64-linux lib/expressir/model/attribute.rb
expressir-0.2.27-x86_64-darwin lib/expressir/model/attribute.rb
expressir-0.2.27-x86-mingw32 lib/expressir/model/attribute.rb
expressir-0.2.27-x86-linux lib/expressir/model/attribute.rb
expressir-0.2.27-x64-mingw32 lib/expressir/model/attribute.rb
expressir-0.2.27-arm64-darwin lib/expressir/model/attribute.rb