From b6fa0ee0ad8a7d2b4815ec912f4e64fb443718e5 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 9 Jun 2023 18:50:15 +0100 Subject: Add typed bool node --- .../shedlang/compiler/ast/typed/TypedBoolLiteralNode.java | 15 +++++++++++++++ .../shedlang/compiler/ast/typed/TypedExpressionNode.java | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 src/main/java/org/shedlang/compiler/ast/typed/TypedBoolLiteralNode.java (limited to 'src/main/java/org') diff --git a/src/main/java/org/shedlang/compiler/ast/typed/TypedBoolLiteralNode.java b/src/main/java/org/shedlang/compiler/ast/typed/TypedBoolLiteralNode.java new file mode 100644 index 00000000..8dd0adab --- /dev/null +++ b/src/main/java/org/shedlang/compiler/ast/typed/TypedBoolLiteralNode.java @@ -0,0 +1,15 @@ +package org.shedlang.compiler.ast.typed; + +import org.shedlang.compiler.sources.Source; +import org.shedlang.compiler.types.Type; +import org.shedlang.compiler.types.Types; + +public record TypedBoolLiteralNode( + boolean value, + Source source +) implements TypedExpressionNode { + @Override + public Type type() { + return Types.BOOL; + } +} diff --git a/src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionNode.java b/src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionNode.java index 73ad8991..3afb418b 100644 --- a/src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionNode.java +++ b/src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionNode.java @@ -3,7 +3,7 @@ package org.shedlang.compiler.ast.typed; import org.shedlang.compiler.sources.Source; import org.shedlang.compiler.types.Type; -public sealed interface TypedExpressionNode permits TypedReferenceNode, TypedStringLiteralNode { +public sealed interface TypedExpressionNode permits TypedBoolLiteralNode, TypedReferenceNode, TypedStringLiteralNode { Source source(); Type type(); } -- cgit v1.2.3