8#ifndef SKSL_FUNCTIONCALL
9#define SKSL_FUNCTIONCALL
24class FunctionDeclaration;
50 std::unique_ptr<Expression> functionValue,
54 static std::unique_ptr<Expression>
Make(
const Context& context,
56 const Type* returnType,
std::unique_ptr< Expression > clone() const
Expression(Position pos, Kind kind, const Type *type)
const Type & type() const
std::string description() const final
static constexpr Kind kIRNodeKind
const ExpressionArray & arguments() const
ExpressionArray & arguments()
const FunctionDeclaration & function() const
static std::unique_ptr< Expression > Convert(const Context &context, Position pos, const FunctionDeclaration &function, ExpressionArray arguments)
static std::unique_ptr< Expression > Make(const Context &context, Position pos, const Type *returnType, const FunctionDeclaration &function, ExpressionArray arguments)
FunctionCall(Position pos, const Type *type, const FunctionDeclaration *function, ExpressionArray arguments)
static const FunctionDeclaration * FindBestFunctionForCall(const Context &context, const FunctionDeclaration *overloads, const ExpressionArray &arguments)