Package org.sonar.javascript.se.sv
Class BuiltInFunctionSymbolicValue
- java.lang.Object
-
- org.sonar.javascript.se.sv.BuiltInFunctionSymbolicValue
-
- All Implemented Interfaces:
FunctionSymbolicValue,ObjectSymbolicValue,SymbolicValue
public class BuiltInFunctionSymbolicValue extends Object implements FunctionSymbolicValue
This symbolic values is used for built-in types and objects methods. Note, that as many of such methods are not supported by all browsers (as they are deprecated or new),baseConstraint(ProgramState)will returnConstraint.FUNCTION.or(Constraint.UNDEFINED).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceBuiltInFunctionSymbolicValue.ArgumentsConstrainerstatic classBuiltInFunctionSymbolicValue.ListSignature
-
Constructor Summary
Constructors Constructor Description BuiltInFunctionSymbolicValue(Constraint returnedValueConstraint)BuiltInFunctionSymbolicValue(Constraint returnedValueConstraint, IntFunction<Constraint> signature)BuiltInFunctionSymbolicValue(Constraint returnedValueConstraint, IntFunction<Constraint> signature, boolean hasSideEffect)BuiltInFunctionSymbolicValue(Constraint returnedValueConstraint, BuiltInFunctionSymbolicValue.ArgumentsConstrainer argumentsConstrainer, IntFunction<Constraint> signature, boolean hasSideEffect)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ConstraintbaseConstraint(ProgramState state)SymbolicValuecall(List<SymbolicValue> argumentValues)Optional<ProgramState>constrainDependencies(ProgramState state, Constraint constraint)booleanhasSideEffect()IntFunction<Constraint>signature()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.sonar.javascript.se.sv.FunctionSymbolicValue
getPropertyValue, instantiate
-
-
-
-
Constructor Detail
-
BuiltInFunctionSymbolicValue
public BuiltInFunctionSymbolicValue(Constraint returnedValueConstraint, IntFunction<Constraint> signature)
-
BuiltInFunctionSymbolicValue
public BuiltInFunctionSymbolicValue(Constraint returnedValueConstraint, IntFunction<Constraint> signature, boolean hasSideEffect)
-
BuiltInFunctionSymbolicValue
public BuiltInFunctionSymbolicValue(Constraint returnedValueConstraint)
-
BuiltInFunctionSymbolicValue
public BuiltInFunctionSymbolicValue(Constraint returnedValueConstraint, @Nullable BuiltInFunctionSymbolicValue.ArgumentsConstrainer argumentsConstrainer, @Nullable IntFunction<Constraint> signature, boolean hasSideEffect)
-
-
Method Detail
-
constrainDependencies
public Optional<ProgramState> constrainDependencies(ProgramState state, Constraint constraint)
- Specified by:
constrainDependenciesin interfaceObjectSymbolicValue- Specified by:
constrainDependenciesin interfaceSymbolicValue
-
baseConstraint
public Constraint baseConstraint(ProgramState state)
- Specified by:
baseConstraintin interfaceFunctionSymbolicValue- Specified by:
baseConstraintin interfaceSymbolicValue
-
call
public SymbolicValue call(List<SymbolicValue> argumentValues)
- Specified by:
callin interfaceFunctionSymbolicValue
-
signature
@CheckForNull public IntFunction<Constraint> signature()
-
hasSideEffect
public boolean hasSideEffect()
-
-