diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_01_08_2024,_13_06_[Changes]/shelved.patch b/.idea/shelf/Uncommitted_changes_before_Update_at_01_08_2024,_13_06_[Changes]/shelved.patch
new file mode 100644
index 0000000..187da89
--- /dev/null
+++ b/.idea/shelf/Uncommitted_changes_before_Update_at_01_08_2024,_13_06_[Changes]/shelved.patch
@@ -0,0 +1,28 @@
+Index: .idea/workspace.xml
+IDEA additional info:
+Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP
+<+>\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n {\n "lastFilter": {\n "state": "OPEN",\n "assignee": "Robert-M-Lucas"\n }\n}\n \n \n \n \n \n \n \n \n \n \n {\n "customColor": "",\n "associatedIndex": 4\n}\n \n \n \n \n \n {\n "keyToString": {\n "Cargo.Build `Run whython-8`.executor": "Run",\n "Cargo.Run whython-8.executor": "Run",\n "Cargo.Test whython-8.executor": "Run",\n "RunOnceActivity.OpenProjectViewOnStart": "true",\n "RunOnceActivity.ShowReadmeOnStart": "true",\n "RunOnceActivity.rust.reset.selective.auto.import": "true",\n "Shell Script.Test Asm.executor": "Run",\n "git-widget-placeholder": "master",\n "ignore.virus.scanning.warn.message": "true",\n "last_opened_file_path": "/home/robertlucas/RustroverProjects/trace",\n "node.js.detected.package.eslint": "true",\n "node.js.detected.package.tslint": "true",\n "node.js.selected.package.eslint": "(autodetect)",\n "node.js.selected.package.tslint": "(autodetect)",\n "nodejs_package_manager_path": "npm",\n "org.rust.cargo.project.model.PROJECT_DISCOVERY": "true",\n "org.rust.cargo.project.model.impl.CargoExternalSystemProjectAware.subscribe.first.balloon": "",\n "org.rust.first.attach.projects": "true",\n "settings.editor.selected.configurable": "preferences.pluginManager",\n "vue.rearranger.settings.migration": "true"\n },\n "keyToStringList": {\n "com.intellij.ide.scratch.ScratchImplUtil$2/New Scratch File": [\n "Rust"\n ]\n }\n}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n \n 1714088144106\n \n \n 1714088144106\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n 1717469659146\n \n \n \n 1717469659146\n \n \n \n 1717473113692\n \n \n \n 1717473113692\n \n \n \n 1717473365560\n \n \n \n 1717473365560\n \n \n \n 1717562697947\n \n \n \n 1717562697947\n \n \n \n 1717570846946\n \n \n \n 1717570846946\n \n \n \n 1717572031837\n \n \n \n 1717572031837\n \n \n \n 1717578308406\n \n \n \n 1717578308406\n \n \n \n 1717598684770\n \n \n \n 1717598684770\n \n \n \n 1717599815108\n \n \n \n 1717599815108\n \n \n \n 1717614243407\n \n \n \n 1717614243407\n \n \n \n 1717614696137\n \n \n \n 1717614696137\n \n \n \n 1717677552390\n \n \n \n 1717677552390\n \n \n \n 1717684897421\n \n \n \n 1717684897422\n \n \n \n 1717705529640\n \n \n \n 1717705529640\n \n \n \n 1717769943602\n \n \n \n 1717769943602\n \n \n \n 1717794101530\n \n \n \n 1717794101530\n \n \n \n 1717794233364\n \n \n \n 1717794233364\n \n \n \n 1717794747334\n \n \n \n 1717794747334\n \n \n \n 1717819316020\n \n \n \n 1717819316020\n \n \n \n 1717826853448\n \n \n \n 1717826853448\n \n \n \n 1718558711741\n \n \n \n 1718558711741\n \n \n \n 1718558898901\n \n \n \n 1718558898901\n \n \n \n 1718636633009\n \n \n \n 1718636633009\n \n \n \n 1718798005819\n \n \n \n 1718798005819\n \n \n \n 1718798188305\n \n \n \n 1718798188305\n \n \n \n 1718799244388\n \n \n \n 1718799244388\n \n \n \n 1718803787262\n \n \n \n 1718803787262\n \n \n \n 1718805301324\n \n \n \n 1718805301324\n \n \n \n 1718888868217\n \n \n \n 1718888868217\n \n \n \n 1718889832262\n \n \n \n 1718889832262\n \n \n \n 1718895358320\n \n \n \n 1718895358320\n \n \n \n 1718928037028\n \n \n \n 1718928037028\n \n \n \n 1718928163157\n \n \n \n 1718928163157\n \n \n \n 1718963722966\n \n \n \n 1718963722967\n \n \n \n 1718964303334\n \n \n \n 1718964303334\n \n \n \n 1718968546046\n \n \n \n 1718968546046\n \n \n \n 1719323220161\n \n \n \n 1719323220162\n \n \n \n 1719323378191\n \n \n \n 1719323378191\n \n \n \n 1719324580280\n \n \n \n 1719324580280\n \n \n \n 1719324945974\n \n \n \n 1719324945974\n \n \n \n 1719325143424\n \n \n \n 1719325143424\n \n \n \n 1721950132807\n \n \n \n 1721950132807\n \n \n \n 1721951605297\n \n \n \n 1721951605297\n \n \n \n 1721954057479\n \n \n \n 1721954057480\n \n \n \n 1721990519536\n \n \n \n 1721990519536\n \n \n \n 1721996703318\n \n \n \n 1721996703318\n \n \n \n 1721997307152\n \n \n \n 1721997307152\n \n \n \n 1721997775708\n \n \n \n 1721997775708\n \n \n \n 1722095029520\n \n \n \n 1722095029521\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
+Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
+<+>UTF-8
+===================================================================
+diff --git a/.idea/workspace.xml b/.idea/workspace.xml
+--- a/.idea/workspace.xml (revision a9a9030fd25a85c46e128db3d2e778f13a97e64b)
++++ b/.idea/workspace.xml (date 1722513955066)
+@@ -48,12 +48,12 @@
+
+
+
+- {
++ "selectedUrlAndAccountId": {
++ "url": "https://github.com/Robert-M-Lucas/whython-8.git",
++ "accountId": "4a322597-eb99-4adb-939a-37a7436c8242"
+ }
+-}]]>
++}
+
+
+
diff --git a/build/out.asm b/build/out.asm
index fa71314..ace0deb 100644
--- a/build/out.asm
+++ b/build/out.asm
@@ -6,69 +6,9 @@ main:
push rbp
mov rbp, rsp
mov qword [rbp-8], 3
- mov rax, qword [rbp-8]
- mov qword [rbp-16], rax
- sub rsp, 16
- call _9
- add rsp, 16
- mov rax, rbp
- add rax, -8
- mov qword [rbp-24], rax
- mov rdx, qword [rbp-24]
- mov rax, qword [rdx+0]
- mov qword [rbp-16], rax
- mov rdi, __8_fstr
- mov rsi, [rbp-16]
- mov al, 0
- sub rsp, 24
- extern printf
- call printf
- add rsp, 24
- mov qword [rbp-32], 8
- mov rax, qword [rbp-32]
+ mov qword [rbp-16], 8
+ mov rax, qword [rbp-16]
leave
ret
-_9:
- push rbp
- mov rbp, rsp
- mov rax, rbp
- add rax, 16
- mov qword [rbp-16], rax
- mov rdx, qword [rbp-16]
- mov rax, qword [rdx+0]
- mov qword [rbp-8], rax
- mov rdi, __8_fstr
- mov rsi, [rbp-8]
- mov al, 0
- sub rsp, 16
- extern printf
- call printf
- add rsp, 16
- mov rax, rbp
- add rax, 16
- mov qword [rbp-24], rax
- mov qword [rbp-32], 1
- mov rax, qword [rbp-24]
- mov rdx, qword [rbp-32]
- add qword [rax], rdx
- mov rax, rbp
- add rax, 16
- mov qword [rbp-48], rax
- mov rdx, qword [rbp-48]
- mov rax, qword [rdx+0]
- mov qword [rbp-40], rax
- mov rdi, __8_fstr
- mov rsi, [rbp-40]
- mov al, 0
- sub rsp, 48
- extern printf
- call printf
- add rsp, 48
-
-leave
-ret
-
-section .data_readonly
- __8_fstr db `Integer: %ld\n`,0
\ No newline at end of file
diff --git a/build/out.o b/build/out.o
index db9d8ae..3add5ba 100644
Binary files a/build/out.o and b/build/out.o differ
diff --git a/build/out.out b/build/out.out
index b9dac6d..329ee4f 100755
Binary files a/build/out.out and b/build/out.out differ
diff --git a/main.why b/main.why
index 72e959e..d33b0b6 100644
--- a/main.why
+++ b/main.why
@@ -14,4 +14,4 @@ fn main() -> int {
+ a +
return 8;
-}
\ No newline at end of file
+}
diff --git a/src/root/parser/parse_function/parse_evaluable.rs b/src/root/parser/parse_function/parse_evaluable.rs
index d2b88d7..f5f82d3 100644
--- a/src/root/parser/parse_function/parse_evaluable.rs
+++ b/src/root/parser/parse_function/parse_evaluable.rs
@@ -131,6 +131,11 @@ impl FullNameTokens {
}
}
+pub struct STempEvaluableTokenOne<'a> {
+ pub inner: TempEvaluableTokensOne,
+ pub s: Span<'a>
+}
+
#[allow(private_interfaces)]
#[derive(Debug)]
enum TempEvaluableTokensOne {
@@ -147,6 +152,11 @@ enum TempEvaluableTokensOne {
DynamicFunctionCall(SimpleNameToken, Vec),
}
+pub struct STempEvaluableTokenTwo<'a> {
+ pub inner: TempEvaluableTokensTwo,
+ pub s: Span<'a>
+}
+
#[derive(Debug)]
enum TempEvaluableTokensTwo {
EvaluableToken(EvaluableToken),
@@ -274,7 +284,12 @@ pub fn parse_evaluable<'a, 'b>(
// Recursively parse bracketed sections
let ns = if let Ok((ns, inner)) = parse_terminator_default_set(s, &BRACKET_TERMINATOR) {
let (_, evaluable) = parse_evaluable(inner, containing_class, false)?;
- evaluables.push(TempEvaluableTokensOne::EvaluableToken(evaluable));
+ evaluables.push(
+ STempEvaluableTokenOne {
+ inner: TempEvaluableTokensOne::EvaluableToken(evaluable)),
+ s: inner
+ }
+ );
ns
}
// Parse evaluable