Constructs a new Symbol.
The name must be a valid public Dart member name, public constructor name, or library name, optionally qualified.
A qualified name is a valid name preceded by a public identifier name
and a '.
', e.g., foo.bar.baz=
is a qualified version of baz=
.
That means that the content of the name
String must be either
- a valid public Dart identifier
(that is, an identifier not starting with "
_
"), - such an identifier followed by "=" (a setter name),
- the name of a declarable operator
(one of "
+
", "-
", "*
", "/
", "%
", "~/
", "&
", "|
", "^
", "~
", "<<
", ">>
", "<
", "<=
", ">
", ">=
", "==
", "[]
", "[]=
", or "unary-
"), - any of the above preceded by any number of qualifiers,
where a qualifier is a non-private identifier followed by '
.
', - or the empty string (the default name of a library with no library name declaration).
The following text is non-normative:
Creating non-const Symbol instances may result in larger output. If
possible, use MirrorsUsed
from "dart:mirrors" to specify which names
might be passed to this constructor.
Source
const factory Symbol(String name) = internal.Symbol;