memberCall

fun LanguageFrontend<*, *>.memberCall(localName: CharSequence, base: Expression, isStatic: Boolean = false, init: MemberCallExpression.() -> Unit? = null): MemberCallExpression

Creates a new CallExpression (or MemberCallExpression) in the Fluent Node DSL with the given localName and adds it to the nearest enclosing Holder. Depending on whether it is a StatementHolder it is added to the list of StatementHolder.statements or in case of an ArgumentHolder, the function ArgumentHolder.addArgument is invoked.

The type of expression is determined whether localName is either a Name with a Name.parent or if it can be parsed as a FQN in the given language. It also automatically creates either a Reference or MemberExpression and sets it as the CallExpression.callee. The init block can be used to create further sub-nodes as well as configuring the created node itself.