-
Notifications
You must be signed in to change notification settings - Fork 13
Helper Objects
Generated from 'wiki-helper-objects.ts' on 2026-09-01, 11:38:11 UTC (v2.15.8, R v4.6.1), please do not edit directly.
A helper object is a const named after a type, holding the operations on values of it. flowR has
71 of them, and this page groups them by what they are about.
SourceLocation.at(node)?.startLine
DfgVertex.isFunctionCall(vertex)
DfEdge.includesType(edge, EdgeType.Reads)They share one shape, which is also how this page finds them:
export const Thing = {
name: 'Thing',
doSomething(this: void, thing: Thing): Answer {
/* ... */
}
} as const;A place in the analyzed source, and the ways to name one.
| helper | what it is |
|---|---|
SourceRange |
Utility functions for source ranges . |
SourceLocation |
Utility functions for source locations . |
NodeId |
What a NodeId is: the identity of a node within one analysis, plus the built-in and pkg::fn names encoded as one, and the ways to read a name back out of it. |
SlicingCriterion |
The helper object for slicing criteria: parsing, validating and resolving them, one ( SlicingCriterion.parse ) or several ( SlicingCriterion.decodeAll ) at a time. |
Playground |
Everything about flowR's playground that is not the page itself: what a link to it carries, and how one is written. |
What the R code is, once flowR has read it.
| helper | what it is |
|---|---|
RNode |
Helper object to provide helper functions for RNodes . |
RProject |
Helper object to identify RProject nodes by their type and to provide related functions. |
Beside these sits one helper per kind of node, each named after what it matches, so a for loop is RForLoop and a call is RFunctionCall. Every one answers is, plus whatever that kind allows on top; RNode is where to start when the kind is not known yet.
What a name is, and what a value flowR worked out may be.
| helper | what it is |
|---|---|
Identifier |
Helper functions to work with identifiers . |
RValue |
Reads the plain TS value a Value stands for, undefined whenever it stands for more than one, for none, or for another kind. |
RStringValue |
Checks whether the given string is an R string literal (including raw strings). |
RNumberValue |
What an RNumberValue is: R's number as it was written, its integer marker (1L) and its complex flag (1i) included. |
TernaryLogic |
Always, never, or maybe, which is what a static answer about a running program usually is. |
RVersion |
Helpers for R package versions (1.2-3 style), which are freer than SemVer. |
RRange |
Helpers for R package version ranges (DESCRIPTION constraints like >= 0.4-9). |
From a name to what it may refer to, and from a node to what it may hold.
| helper | what it is |
|---|---|
REnvironment |
Helpers for navigating and manipulating environments around the global environment and attached-package search path. |
Resolve |
The helper object for resolution: from a name to the definitions it may refer to, and from a node to the value(s) it may hold. |
NodeValue |
The value(s) a node may hold. |
ClosureRefs |
The open references a function definition still carries into its closure. |
What depends on what. Dataflow is the way in; the rest are the pieces it hands back.
| helper | what it is |
|---|---|
Dataflow |
Gas key for dataflow extraction. |
DfgVertex |
The one helper to ask a vertex what it is. |
DfEdge |
Helper Functions to work with DfEdge and EdgeType . |
FunctionArgument |
Helper functions to work with FunctionArgument s. |
UnknownSideEffect |
Helpers for the UnknownSideEffect union, which is either a plain NodeId or a { id, linkTo } object. |
ControlDependency |
Utility functions to work with control dependencies . |
DataflowInformation |
Helper object for DataflowInformation
|
CallGraph |
Helper object for call-graphs, you can compute new call graphs based on CallGraph.compute . |
GraphHelper |
The underlying functions which work for any graph* like view. |
What may run after what.
| helper | what it is |
|---|---|
CfgVertex |
Helper object for CfgVertex - a vertex in the ControlFlowGraph . |
CfgEdge |
Helper object for CfgEdge - an edge in the ControlFlowGraph . |
ControlFlow |
Records the control flow of a program in the DataflowGraph while the dataflow analysis walks it. |
What an analysis works out about a definition, and what one call of it amounts to.
| helper | what it is |
|---|---|
FunctionSemantics |
The one helper to ask what a function does: what it makes of its arguments, what it may raise, which formals it forces, and what it declares as a class. |
One entry point covers both halves: FunctionSemantics.props, FunctionSemantics.exceptions, FunctionSemantics.strictness and their kin answer about a definition, while FunctionSemantics.call holds what flowR states about a call (props, signature, argument), how R binds its arguments (match), and which of them it does not simply evaluate (nse, quoted, deferred).
The APIs an analysis is written against.
| helper | what it is |
|---|---|
Query |
Running queries and reading what they reported, without Object.entries and the casts it forces. |
FlowrSearchGenerator |
This object holds all the methods to generate search queries. |
QueryFunctionFilter |
Resolves the function filter shared by the inspection queries (inspect-*). |
HappensBeforeKey |
How an answer of the HappensBeforeQuery is keyed: the two criteria it was asked about, so that both the executor writing an answer and anyone reading one spell the key the same way. |
LintingResults |
Helper functions for working with LintingResults . |
LintQuickFix |
Helper for working with quick fixes . |
What is being analyzed, and under which settings.
| helper | what it is |
|---|---|
FlowrConfig |
flowR's configuration: its default, reading one from disk, and getting or setting a single value at a dotted path (an EngineConfigPath included). |
DescriptionFile |
Access to the DESCRIPTION file of the analyzed project. |
Turning any of the above into something to look at.
| helper | what it is |
|---|---|
Mermaid |
Global mermaid helper object with useful functions. |
DataflowMermaid |
The helper object for all things regarding the mermaid based visualization of dataflow graphs! |
Record |
Helper for transforming records. |
ReplClipboard |
Output that the user most likely wants on their clipboard as well. |
Currently maintained by Florian Sihler and Oliver Gerstl at Ulm University
Email | GitHub | Penguins | Portfolio
- 🧑💻 Developer Onboarding
- 💻 Setup
- 👓 Overview
- 🪟 Interfacing with flowR
- 🌋 Core
- 🧹 Testing & Linting (Benchmark Page)
⁉️ FAQ- ℹ️ Extra Information