summaryrefslogtreecommitdiff
path: root/src/parser
diff options
context:
space:
mode:
authorLizzy Hunt <lizzy.hunt@usu.edu>2024-03-05 14:28:28 -0700
committerLizzy Hunt <lizzy.hunt@usu.edu>2024-03-05 14:28:28 -0700
commit2f77b3fb5a102224c83db2f1fa093c278db716e5 (patch)
treedf00b9c963dedb805c06a717d2840206dd0bceea /src/parser
parent9d1bd0d489870a1d9a3c971542a248def9d84b0d (diff)
downloadcps-interpreter-2f77b3fb5a102224c83db2f1fa093c278db716e5.tar.gz
cps-interpreter-2f77b3fb5a102224c83db2f1fa093c278db716e5.zip
evaluate booleans
Diffstat (limited to 'src/parser')
-rw-r--r--src/parser/grammar.pegjs2
-rw-r--r--src/parser/index.ts2
-rw-r--r--src/parser/parser.ts4
3 files changed, 4 insertions, 4 deletions
diff --git a/src/parser/grammar.pegjs b/src/parser/grammar.pegjs
index f586dcc..180b87f 100644
--- a/src/parser/grammar.pegjs
+++ b/src/parser/grammar.pegjs
@@ -234,7 +234,7 @@ IntStatement = INT _ int:Integer { return int; }
RealStatement = REAL _ real:Real { return real; }
-BoolStatement = BOOL _ bool:Integer { return bool; }
+BoolStatement = BOOL _ bool:Integer { return { bool: bool.int }; }
StringStatement = STRING _ string:QuotedString { return string; }
diff --git a/src/parser/index.ts b/src/parser/index.ts
index 7831c8e..366042c 100644
--- a/src/parser/index.ts
+++ b/src/parser/index.ts
@@ -2,5 +2,5 @@ export * from './generate';
export * from './parser';
import * as peggy from './parser';
-export const peggyParse = (source: string): peggy.FunctionDefinition[] =>
+export const peggyParse = (source: string): peggy.ContinuationExpression[] =>
peggy.parse(source);
diff --git a/src/parser/parser.ts b/src/parser/parser.ts
index b196866..934f3ff 100644
--- a/src/parser/parser.ts
+++ b/src/parser/parser.ts
@@ -512,7 +512,7 @@ function peg$parse(input, options) {
return real; };// @ts-ignore
var peg$f18 = function(bool) {// @ts-ignore
- return bool; };// @ts-ignore
+ return { bool: bool.int }; };// @ts-ignore
var peg$f19 = function(string) {// @ts-ignore
return string; };// @ts-ignore
@@ -5395,7 +5395,7 @@ export type VarStatement = Identifier;
export type LabelStatement = Identifier;
export type IntStatement = Integer;
export type RealStatement = Real;
-export type BoolStatement = Integer;
+export type BoolStatement = { bool: any };
export type StringStatement = QuotedString;
export type AccessStatement = OffsetStatement | SelectStatement;
export type OffsetStatement = Integer;