Check if the identifier accesses internal objects (:::), undefined if it says nothing about it.
Fast-path factory: returns the tuple as-is with no allocation or runtime checks. Use for static built-in config entries where name is a compile-time constant with no backticks.
The same fast path for many names of one package: the given array of names is cast in place, so the literal you pass is the only array involved.
The names as every one of the given packages exports them, for a function one package owns and others
re-export unchanged (dplyr::%>% is magrittr::%>%).
ReadonlygetName: Accessor<Identifier, BrandedIdentifier>Get the name part of the identifier, undefined if there is no identifier.
Get the namespace part of the identifier, undefined if there is none (or no identifier).
Verify whether an unknown element has a valid identifier shape!
Check if the identifier is the special ... argument / or one of its accesses like ..1, ..2, etc.
This always returns false for namespaced identifiers.
Creates an identifier. Strips surrounding backticks from the name. Prefer Identifier.from for static config entries where namespace is always present and name has no backticks.
Optionalnamespace: BrandedNamespaceFunctor over the name of the identifier
Functor over the namespace of the identifier
Check if two identifiers match. This differs from eq! If the first identifier is not namespaced, it will match any namespace! If we search for S3 methods (s3=true), the target may have an additional suffix after a dot. If the first identifier is internal, it will match any target (internal or not).
Readonlyname: "Identifier"Parse an identifier from its string representation,
Please note, that in R if one writes "pkg::a" this refers to a symbol named pkg::a and NOT to the namespaced identifier a in package pkg.
In this scenario, see Identifier.make instead.
The text as a regex matches it literally: [, $ and . name functions in R, they are not pattern syntax.
Helper to create a regular expression that matches against an array of Identifier values. If both the passed identifier and the matched identifier are namespaced, their namespaces are expected to match. If either is not namespaced, the namespace is ignored on both.
Convert the identifier to its array representation
The package-qualified identifier of a call, resolved in order of decreasing certainty:
map() with purrr loaded yields purrr::map),name returned unchanged (an explicit pkg::fn call),qualifyBaseR, a bare base-R call qualified from its exporting package via baseRExportOwner
(sd yields stats::sd), needing no loaded database or graph edge and skipped when the call resolves to
a user definition, so a local sd() stays bare.Returns undefined when none apply. Steps 2 and 3 need the call's name.
the origins of the call to qualify
Optionalname: Identifier
the name the call was written with, needed by steps 2 and 3
whether to also qualify a bare base-R call from its exporting package (default true)
Dataflow.qualify - the compact form, if you have the call's id and its graph
ReadonlytoString: Accessor<Identifier, string>Convert the identifier to a valid R string representation,
this will properly quote namespaces that contain :: to avoid confusion.
Readonlyview: Accessor<Identifier, IdentifierView>Wraps the identifier in an view offering property access (id.name, id.namespace)
and methods. The view does not copy anything; see IdentifierView for when to use it.
Helper functions to work with identifiers. Use Identifier.matches to check if two identifiers match according to R's scoping rules!