Class DataFlow :: SourceNode
A source node for local data flow, that is, a node from which local data flow is tracked.
This includes function invocations, parameters, object creation, and references to a property or global variable.
You can introduce new kinds of source nodes by defining new subclasses of DataFlow::SourceNode::Range
.
Examples:
obj.f // property access
Math.abs(x) // function calls
{ f: 12, g: 45 }; // object expressions
function fn(x) {} // functions and parameters
class C {} // classes
document // global variable access
<View/> // JSX literals
/[a-z]+/g; // regular expression literal
await x // await expression
import * as fs from 'fs';
import { readDir } from 'fs';
import("fs")
Import path
import javascript
Direct supertypes
Indirect supertypes
Known direct subtypes
- ActionCreator
- ArrayCreationNode
- ArrayLiteralNode
- CheerioObjectCreation
- ClassNode
- CommandLineArgumentsArray
- CookieMiddlewareInstance
- DelegatingReducer
- DynamicPropRead
- EmailSender
- FunctionNode
- GlobalVarRefNode
- Handlebars
- InvokeNode
- LocalObject
- Member
- Member
- ModuleImportNode
- NamespaceNode
- Object
- ObjectLiteralNode
- ParameterNode
- ParsedTorrent
- PromiseDefinition
- PropRead
- Range
- Range
- Range
- Range
- Range
- Range
- Range
- RateLimitingMiddleware
- ReceiveCallback
- ReceiveCallback
- RegExpCreationNode
- RegExpLiteralNode
- Root
- RouteHandler
- ServerNode
- ServerSocket
- SocketClass
- SocketNode
- SocketNode
- StoreCreation
- ThisNode
- WebContents
- WebViewElement
Predicates
backtrack |
Gets a node that may flow into this one using one heap and/or interprocedural step. |
flowsTo |
Holds if this node flows into |
flowsToExpr |
Holds if this node flows into |
getACall |
Gets a function call to this node. |
getAChainedMethodCall |
Gets a chained method call that invokes |
getAConstructorInvocation |
Gets a |
getALocalUse |
Gets a node into which data may flow from this node in zero or more local steps. |
getAMemberCall |
Gets a function call that invokes method |
getAMemberInvocation |
Gets an invocation of the method or constructor named |
getAMethodCall |
Gets a method call that invokes method |
getAMethodCall |
Gets a method call that invokes a method on this node. |
getAPropertyRead |
Gets a read of property |
getAPropertyRead |
Gets a read of any property on this node. |
getAPropertyReference |
Gets a reference (read or write) of property |
getAPropertyReference |
Gets a reference (read or write) of any property on this node. |
getAPropertySource |
Gets a source node whose value is stored in property |
getAPropertySource |
Gets a source node whose value is stored in a property of this node. |
getAPropertyWrite |
Gets a write of property |
getAPropertyWrite |
Gets a write of any property on this node. |
getAnInstantiation |
Gets a |
getAnInvocation |
Gets an invocation (with our without |
hasPropertyWrite |
Holds if there is an assignment to property |
track |
Gets a node that this node may flow to using one heap and/or interprocedural step. |
Inherited predicates
accessesGlobal |
Holds if this data flow node accesses the global variable |
from Node |
analyze |
Gets type inference results for this data flow node. |
from Node |
asExpr |
Gets the expression corresponding to this data flow node, if any. |
from Node |
getABoundFunctionValue |
Gets a function value that may reach this node, possibly derived from a partial function invocation. |
from Node |
getAFunctionValue |
Gets a function value that may reach this node. |
from Node |
getAFunctionValue |
Gets a function value that may reach this node with the given |
from Node |
getALocalSource |
Gets a source node from which data may flow to this node in zero or more local steps. |
from Node |
getAPredecessor |
Gets a data flow node from which data may flow to this node in one local step. |
from Node |
getASuccessor |
Gets a data flow node to which data may flow from this node in one local step. |
from Node |
getAstNode |
Gets the AST node corresponding to this data flow node, if any. |
from Node |
getBasicBlock |
Gets the basic block to which this node belongs. |
from Node |
getContainer |
Gets the container in which this node occurs. |
from Node |
getEnclosingExpr |
Gets the expression enclosing this data flow node. In most cases the result is the same as |
from Node |
getEndColumn |
Gets the end column of this data flow node. |
from Node |
getEndLine |
Gets the end line of this data flow node. |
from Node |
getFile |
Gets the file this data flow node comes from. |
from Node |
getImmediatePredecessor |
Gets the immediate predecessor of this node, if any. |
from Node |
getIntValue |
Gets the integer value of this node, if it is an integer constant. |
from Node |
getStartColumn |
Gets the start column of this data flow node. |
from Node |
getStartLine |
Gets the start line of this data flow node. |
from Node |
getStringValue |
Gets the string value of this node, if it is a string literal or constant string concatenation. |
from Node |
getTopLevel |
Gets the toplevel in which this node occurs. |
from Node |
hasLocationInfo |
Holds if this element is at the specified location. The location spans column |
from Node |
hasUnderlyingType |
Holds if this node is annotated with the given named type, or is declared as a subtype thereof, or is a union or intersection containing such a type. |
from Node |
hasUnderlyingType |
Holds if this node is annotated with the given named type, or is declared as a subtype thereof, or is a union or intersection containing such a type. |
from Node |
isIncomplete |
Holds if the flow information for this node is incomplete. |
from Node |
mayHaveBooleanValue |
Holds if this node may evaluate to the Boolean value |
from Node |
mayHaveStringValue |
Holds if this node may evaluate to the string |
from Node |
mayReferToParameter |
DEPRECATED: Use |
from Node |
toString |
Gets a textual representation of this element. |
from Node |