Sha256: 88d18f04bc15ccc8fe01de2e7045f85a7e461b1c47c623de69d5aa7abaa425ab

Contents?: true

Size: 419 Bytes

Versions: 2

Compression:

Stored size: 419 Bytes

Contents

module Finitio
  module Syntax
    module SubType
      include Node

      capture :rel_type, :constraint_def

      def compile(factory)
        s = rel_type.compile(factory)
        c = constraint_def.compile(factory)
        factory.subtype(s, c)
      end

      def to_ast
        [:sub_type, rel_type.to_ast] + constraint_def.to_ast
      end

    end # module SubType
  end # module Syntax
end # module Finitio

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
finitio-0.5.1 lib/finitio/syntax/type/sub_type.rb
finitio-0.5.0 lib/finitio/syntax/type/sub_type.rb