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;