AstForExpressionsCreator

io.joern.rubysrc2cpg.astcreation.AstForExpressionsCreator
trait AstForExpressionsCreator(implicit withSchemaValidation: ValidationMode)

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AstCreator
Self type

Members list

Value members

Concrete methods

protected def astForArrayLiteral(node: ArrayLiteral): Ast
protected def astForAssociation(node: Association): Ast
protected def astForAssociationHash(node: Association, tmp: String): List[Ast]
protected def astForBinary(node: BinaryExpression): Ast
protected def astForCallWithBlock[C <: RubyCall](node: RubyExpression & RubyCallWithBlock[C]): Ast
protected def astForDynamicLiteral(node: DynamicLiteral): Ast
protected def astForExpression(node: RubyExpression): Ast
protected def astForFieldAccess(node: MemberAccess, stripLeadingAt: Boolean): Ast
protected def astForHashLiteral(node: HashLiteral): Ast
protected def astForHereDoc(node: HereDocNode): Ast
protected def astForIncludeCall(node: IncludeCall): Ast
protected def astForIndexAccess(node: IndexAccess): Ast
protected def astForMandatoryParameter(node: RubyExpression): Ast
protected def astForMemberAccess(node: MemberAccess): Ast
protected def astForMemberCall(node: MemberCall, isStatic: Boolean): Ast
protected def astForNilBlock: Ast
protected def astForNilLiteral: Ast
protected def astForRaiseCall(node: RaiseCall): Ast
protected def astForRange(node: RangeExpression): Ast
protected def astForRequireCall(node: RequireCall): Ast
protected def astForRescueExpression(node: RescueExpression): Ast
protected def astForSimpleCall(node: SimpleCall): Ast
protected def astForSingleAssignment(node: SingleAssignment): Ast
protected def astForSingleKeyValue(keyNode: RubyExpression, valueNode: RubyExpression, tmp: String): Ast
protected def astForSplattingRubyNode(node: SplattingRubyNode): Ast
protected def astForStaticLiteral(node: StaticLiteral): Ast
protected def astForUnary(node: UnaryExpression): Ast
protected def astForUnknown(node: RubyExpression): Ast
protected def astForYield(node: YieldExpr): Ast

A yield in Ruby calls an explicit (or implicit) proc parameter and returns its value. This can be lowered as block.call(), which is effectively how one invokes a proc parameter in any case.

A yield in Ruby calls an explicit (or implicit) proc parameter and returns its value. This can be lowered as block.call(), which is effectively how one invokes a proc parameter in any case.

Attributes

protected def typeFromCallTarget(baseNode: RubyExpression): Option[String]

Attempts to extract a type from the base of a member call.

Attempts to extract a type from the base of a member call.

Attributes

Concrete fields

protected val baseAstCache: Map[RubyExpression, String]

For tracking aliased calls that occur on the LHS of a member access or call.

For tracking aliased calls that occur on the LHS of a member access or call.

Attributes