Sha256: 5f1775d6bedcd4690f5109992c886c4124db421eeccbdba5faf077e159b671d8

Contents?: true

Size: 361 Bytes

Versions: 2

Compression:

Stored size: 361 Bytes

Contents

module Finitio
  module Syntax
    module UnionType
      include Node

      def compile(factory)
        cds = captures[:sub_type].map{|x| x.compile(factory) }
        factory.union(cds)
      end

      def to_ast
        captures[:sub_type].map(&:to_ast).unshift(:union_type)
      end

    end # module UnionType
  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/union_type.rb
finitio-0.5.0 lib/finitio/syntax/type/union_type.rb