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.
688 689 690 |
# File 'lib/dhall/typecheck.rb', line 688 def initialize(enum) @enum = enum end |
Instance Method Details
#annotate(context) ⇒ Object
692 693 694 695 696 697 698 699 700 701 |
# File 'lib/dhall/typecheck.rb', line 692 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 |