Class: Dhall::TypeChecker::Enum
- Inherits:
-
Object
- Object
- Dhall::TypeChecker::Enum
- Defined in:
- lib/dhall/typecheck.rb
Instance Method Summary collapse
- #annotate(context) ⇒ Object
-
#initialize(enum) ⇒ Enum
constructor
A new instance of Enum.
Constructor Details
#initialize(enum) ⇒ Enum
Returns a new instance of Enum.
610 611 612 |
# File 'lib/dhall/typecheck.rb', line 610 def initialize(enum) @enum = enum end |
Instance Method Details
#annotate(context) ⇒ Object
614 615 616 617 618 619 620 621 622 623 |
# File 'lib/dhall/typecheck.rb', line 614 def annotate(context) type = Dhall::UnionType.new( alternatives: { @enum.tag => nil } ).merge(@enum.alternatives) # Annotate to sanity check TypeChecker.for(type).annotate(context) Dhall::TypeAnnotation.new(value: @enum, type: type) end |