Sha256: 566d4768b5e3c52a3fd91cb2ed128712c4860057c3b40fdf9ff34bc0c9c5a27a

Contents?: true

Size: 427 Bytes

Versions: 19

Compression:

Stored size: 427 Bytes

Contents

module Finitio
  module Syntax
    module RelationType
      include Node

      capture :heading

      def compile(factory)
        factory.send(kind, heading.compile(factory))
      end

      def to_ast
        [ :"#{kind}_type", heading.to_ast ]
      end

    private

      def kind
        heading.multi? ? :multi_relation : :relation
      end

    end # module RelationType
  end # module Syntax
end # module Finitio

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
finitio-0.12.0 lib/finitio/syntax/type/relation_type.rb
finitio-0.11.4 lib/finitio/syntax/type/relation_type.rb
finitio-0.11.3 lib/finitio/syntax/type/relation_type.rb
finitio-0.11.2 lib/finitio/syntax/type/relation_type.rb
finitio-0.11.1 lib/finitio/syntax/type/relation_type.rb
finitio-0.10.0 lib/finitio/syntax/type/relation_type.rb
finitio-0.9.1 lib/finitio/syntax/type/relation_type.rb
finitio-0.9.0 lib/finitio/syntax/type/relation_type.rb
finitio-0.8.0 lib/finitio/syntax/type/relation_type.rb
finitio-0.7.0 lib/finitio/syntax/type/relation_type.rb
finitio-0.7.0.pre.rc4 lib/finitio/syntax/type/relation_type.rb
finitio-0.7.0.pre.rc3 lib/finitio/syntax/type/relation_type.rb
finitio-0.7.0.pre.rc2 lib/finitio/syntax/type/relation_type.rb
finitio-0.7.0.pre.rc1 lib/finitio/syntax/type/relation_type.rb
finitio-0.6.1 lib/finitio/syntax/type/relation_type.rb
finitio-0.6.0 lib/finitio/syntax/type/relation_type.rb
finitio-0.5.2 lib/finitio/syntax/type/relation_type.rb
finitio-0.5.1 lib/finitio/syntax/type/relation_type.rb
finitio-0.5.0 lib/finitio/syntax/type/relation_type.rb