galvan_ast/item/
function_call.rs1use crate::{DeclModifier, Expression, Ident, PrintAst, TypeIdent};
2use derive_more::From;
3use galvan_ast_macro::PrintAst;
4
5#[derive(Clone, Debug, PartialEq, Eq, PrintAst)]
6pub struct FunctionCall {
7 pub identifier: Ident,
8 pub arguments: Vec<FunctionCallArg>,
9}
10
11#[derive(Clone, Debug, PartialEq, Eq, PrintAst)]
12pub struct FunctionCallArg {
13 pub modifier: Option<DeclModifier>,
14 pub expression: Expression,
15}
16
17#[derive(Clone, Debug, PartialEq, Eq, PrintAst)]
18pub struct ConstructorCall {
19 pub identifier: TypeIdent,
20 pub arguments: Vec<ConstructorCallArg>,
21}
22
23#[derive(Clone, Debug, PartialEq, Eq, From, PrintAst)]
24pub struct ConstructorCallArg {
25 pub ident: Ident,
26 pub expression: Expression,
27}