From d0de794412c858111d2e1612c2bba4e069b7f211 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 22 Dec 2024 10:42:46 +0000 Subject: Add stubbed ShidToPatioMethods --- .../shedlang/compiler/shidtopatio/ShidToPatio.java | 21 +++++++++++++++-- .../compiler/shidtopatio/ShidToPatioMethods.java | 26 ++++++++++++++++++++++ 2 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 src/main/java/org/shedlang/compiler/shidtopatio/ShidToPatioMethods.java (limited to 'src/main/java') diff --git a/src/main/java/org/shedlang/compiler/shidtopatio/ShidToPatio.java b/src/main/java/org/shedlang/compiler/shidtopatio/ShidToPatio.java index 61e7eada..b612dbf3 100644 --- a/src/main/java/org/shedlang/compiler/shidtopatio/ShidToPatio.java +++ b/src/main/java/org/shedlang/compiler/shidtopatio/ShidToPatio.java @@ -522,11 +522,28 @@ public class ShidToPatio { } case ShidMethodLoad methodLoad -> { - throw new UnsupportedOperationException("TODO"); + context = ShidToPatioMethods.methodLoad( + methodLoad.type(), + methodLoad.methodName(), + context + ); + + yield context; } case ShidMethodStore methodStore -> { - throw new UnsupportedOperationException("TODO"); + var methodValueResult = context.temporaryPop(); + var methodValue = methodValueResult.value(); + context = methodValueResult.context(); + + context = ShidToPatioMethods.methodStore( + methodStore.type(), + methodStore.methodName(), + methodValue, + context + ); + + yield context; } case ShidNamespaceFieldStore namespaceFieldStore -> { diff --git a/src/main/java/org/shedlang/compiler/shidtopatio/ShidToPatioMethods.java b/src/main/java/org/shedlang/compiler/shidtopatio/ShidToPatioMethods.java new file mode 100644 index 00000000..ae1bb925 --- /dev/null +++ b/src/main/java/org/shedlang/compiler/shidtopatio/ShidToPatioMethods.java @@ -0,0 +1,26 @@ +package org.shedlang.compiler.shidtopatio; + +import org.shedlang.compiler.patio.operands.PatioOperand; +import org.shedlang.compiler.types.SimpleStructType; + +public class ShidToPatioMethods { + private ShidToPatioMethods() { + } + + public static ShidToPatioContext methodLoad( + SimpleStructType type, + String methodName, + ShidToPatioContext context + ) { + return context; + } + + public static ShidToPatioContext methodStore( + SimpleStructType type, + String methodName, + PatioOperand methodValue, + ShidToPatioContext context + ) { + return context; + } +} -- cgit v1.2.3