dmd.identifier
Defines an identifier
, which is the name of a Dsymbol
.
License
Source: identifier.d
Documentation: https://dlang.org/phobos/dmd_identifier.html
-
Declaration
class
Identifier
: dmd.rootobject.RootObject;-
Declaration
nothrow this(const(char)*
name
);Construct an identifier from the given
name
. -
Declaration
nothrow this(const(char)*
name
, size_tlength
, intvalue
);
nothrow @safe this(const(char)[]name
, intvalue
);Construct an identifier from the given
name
.Parameters
const(char)*
name
the identifier
name
. There must be'\0'
at
.name
[length
]size_t
length
the
length
of
, excluding the terminatingname
'\0'
int
value
Identifier
value
(e.g.Id.unitTest
) orTOK.identifier
-
Declaration
static nothrow Identifier
generateId
(const(char)[]prefix
);Generates a new identifier.
Parameters
const(char)[]
prefix
this will be the
prefix
of the name of the identifier. For debugging purpose. -
Declaration
static nothrow Identifier
generateAnonymousId
(const(char)[]name
);Generates a new anonymous identifier.
Parameters
const(char)[]
name
this will be part of the
name
of the identifier. For debugging purpose. -
Declaration
static nothrow Identifier
generateId
(const(char)[]prefix
, size_tsuffix
);
static nothrow IdentifiergenerateId
(const(char)*prefix
, size_tlength
, size_tsuffix
);Generates a new identifier.
Parameters
const(char)[]
prefix
this will be the
prefix
of the name of the identifier. For debugging purpose.size_t
suffix
this will be the
suffix
of the name of the identifier. This is what makes the identifier unique -
Declaration
static nothrow Identifier
generateIdWithLoc
(stringprefix
, const ref Locloc
);Generate deterministic named identifier based on a source location, such that the name is consistent across multiple compilations. A new unique name is generated. If the
prefix
+location is already in the stringtable, an extra suffix is added (starting the count at "1").Parameters
string
prefix
first part of the identifier name.
Loc
loc
source location to use in the identifier name.
Return Value
Identifier (inside Identifier.idPool) with deterministic name based on the source location.
-
Declaration
static nothrow Identifier
idPool
(const(char)*s
, uintlen
);Create an identifier in the string table.
-
Declaration
static nothrow void
idPool
(const(char)[]s
, TOKvalue
);Used for inserting keywords into the string table.
Parameters
const(char)[]
s
string for keyword
TOK
value
TOK.xxxx for the keyword
-
Declaration
static nothrow bool
isValidIdentifier
(const(char)*str
);
static nothrow @safe boolisValidIdentifier
(const(char)[]str
);Determine if string is a valid Identifier.
Parameters
const(char)*
str
string to check
Return Value
false
for invalid
-