about summary refs log tree commit diff
path: root/src/parse/ast/nodes.rs
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2021-10-24 02:03:29 +0200
committerMel <einebeere@gmail.com>2021-10-24 02:03:29 +0200
commit73c4808c44f75b7d6546f00f70779fcbf8e28754 (patch)
treef44e26fad3f37e62c0f5a35e2fafbe2d20f6da55 /src/parse/ast/nodes.rs
parent249abe9c33dfd08afa6b09f3e53be91b0f445561 (diff)
downloadrabbithole-73c4808c44f75b7d6546f00f70779fcbf8e28754.tar.zst
rabbithole-73c4808c44f75b7d6546f00f70779fcbf8e28754.zip
Postfix parsing
Diffstat (limited to 'src/parse/ast/nodes.rs')
-rw-r--r--src/parse/ast/nodes.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/parse/ast/nodes.rs b/src/parse/ast/nodes.rs
index 2a4f7c0..617a01c 100644
--- a/src/parse/ast/nodes.rs
+++ b/src/parse/ast/nodes.rs
@@ -88,6 +88,24 @@ pub struct TypedIdentifier {
 }
 
 #[derive(Debug, Clone)]
+pub struct CallNode {
+    pub called: Expression,
+    pub arguments: Vec<Expression>,
+}
+
+#[derive(Debug, Clone)]
+pub struct ArrayAccessNode {
+    pub array: Expression,
+    pub index: Expression,
+}
+
+#[derive(Debug, Clone)]
+pub struct MemberAccessNode {
+    pub object: Expression,
+    pub member_name: Identifier,
+}
+
+#[derive(Debug, Clone)]
 pub struct FnNode {
     pub header: FnHeader,
     pub body: BlockNode,