Uses of Record Class
sootup.callgraph.invokedynamic.FunctionalObject
Packages that use FunctionalObject
Package
Description
Points-to analysis graph (PAG) data structures, based on Soot/jimple/spark/pag with significant
modifications.
-
Uses of FunctionalObject in qilin.core.invokedynamic
Methods in qilin.core.invokedynamic with parameters of type FunctionalObjectModifier and TypeMethodDescriptionstatic FieldSignatureLambdaMetafactoryModel.captureField(View view, FunctionalObject fo, int i) The synthetic field holding thei-th value captured forfo: declared by the functional interface, named after the implementation so different lambdas keep their captures apart. -
Uses of FunctionalObject in qilin.core.pag
Methods in qilin.core.pag that return FunctionalObjectMethods in qilin.core.pag with parameters of type FunctionalObjectModifier and TypeMethodDescriptionvoidPAG.registerLambdaTarget(Object newExpr, FunctionalObject functionalObject) Constructors in qilin.core.pag with parameters of type FunctionalObjectModifierConstructorDescriptionLambdaAllocNode(Object newExpr, Type type, SootMethod m, FunctionalObject functionalObject) -
Uses of FunctionalObject in sootup.callgraph
Methods in sootup.callgraph with parameters of type FunctionalObjectModifier and TypeMethodDescriptionprotected voidAbstractCallGraphAlgorithm.onFunctionalObject(@NonNull SootMethod creator, @NonNull FunctionalObject fo, @NonNull MutableCallGraph cg, @NonNull Deque<MethodSignature> workList) Hook: a lambda created increatorwas discovered.protected voidRapidTypeAnalysisAlgorithm.onFunctionalObject(@NonNull SootMethod creator, @NonNull FunctionalObject fo, @NonNull MutableCallGraph cg, @NonNull Deque<MethodSignature> workList) A constructor reference (Foo::new) instantiates its class. -
Uses of FunctionalObject in sootup.callgraph.invokedynamic
Methods in sootup.callgraph.invokedynamic that return types with arguments of type FunctionalObjectModifier and TypeMethodDescriptionstatic @NonNull Optional<FunctionalObject>FunctionalObject.of(@NonNull Stmt stmt, @NonNull DynamicInvokeResolver resolver, @NonNull View view) The objectstmtcreates, if it assigns aLambdaMetafactoryinvokedynamic whose implementationresolverreports. -
Uses of FunctionalObject in sootup.spark
Methods in sootup.spark with parameters of type FunctionalObjectModifier and TypeMethodDescriptionvoidMethodPAGStmtVisitor.installLambdaCallEdges(AbstractInstanceInvokeExpr expr, Optional<Value> lhs, InvokableStmt stmt, FunctionalObject fo, MethodSignature targetMethodSig) Installs the PAG edges of a call that reaches the body offo(targetMethodSig): the call's arguments go to the parameters / receiversamArgumentIndex(int)names; the result flows tolhs: the body's return value or, for a constructor reference, a fresh object (also bound to the constructor's receiver).