aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/patio/PatioCodeGenStrings.java24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/main/java/org/shedlang/compiler/patio/PatioCodeGenStrings.java b/src/main/java/org/shedlang/compiler/patio/PatioCodeGenStrings.java
index 2e62202d..81e80952 100644
--- a/src/main/java/org/shedlang/compiler/patio/PatioCodeGenStrings.java
+++ b/src/main/java/org/shedlang/compiler/patio/PatioCodeGenStrings.java
@@ -18,6 +18,16 @@ import java.util.List;
import java.util.Optional;
public class PatioCodeGenStrings {
+ public static final PatioFunctionDeclaration STRING_ADD_DECLARATION = new PatioFunctionDeclaration(
+ "shed__runtime__string_add",
+ List.of(
+ new PatioLocal.Param("left", PatioCodeGenTypes.VALUE_TYPE),
+ new PatioLocal.Param("right", PatioCodeGenTypes.VALUE_TYPE)
+ ),
+ PatioCodeGenTypes.VALUE_TYPE,
+ Sources.RUNTIME
+ );
+
private PatioCodeGenStrings() {}
public static PatioCodeGenResult<PatioDataPtr> define(
@@ -59,21 +69,11 @@ public class PatioCodeGenStrings {
Source source,
PatioCodeGenContext context
) {
- var runtimeAddName = "shed__runtime__string_add";
-
- context = context.ensureCompilationUnitElement(new PatioFunctionDeclaration(
- runtimeAddName,
- List.of(
- new PatioLocal.Param("left", PatioCodeGenTypes.VALUE_TYPE),
- new PatioLocal.Param("right", PatioCodeGenTypes.VALUE_TYPE)
- ),
- PatioCodeGenTypes.VALUE_TYPE,
- Sources.RUNTIME
- ));
+ context = context.ensureCompilationUnitElement(STRING_ADD_DECLARATION);
context = context.addInstruction(new PatioCall(
Optional.of(target),
- runtimeAddName,
+ STRING_ADD_DECLARATION.name(),
List.of(left, right),
source
));