Check if the identifier accesses internal objects (:::)
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.
Get the namespace part of the identifier, undefined if there is none
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.
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.
Optionalname: Identifierwhether 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
Convert the identifier to a valid R string representation,
this will properly quote namespaces that contain :: to avoid confusion.
Helper functions to work with identifiers. Use Identifier.matches to check if two identifiers match according to R's scoping rules!