Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.


Compiler implementation of the D programming language.

Source identifier.d

class Identifier: dmd.root.rootobject.RootObject;
static nothrow Identifier generateIdWithLoc(string prefix, ref const Loc loc);
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").
string prefix first part of the identifier name.
Loc loc source location to use in the identifier name.
Identifier (inside Identifier.idPool) with deterministic name based on the source location.
static nothrow Identifier idPool(const(char)[] s);
Create an identifier in the string table.
static nothrow bool isValidIdentifier(const(char)* p);
Determine if string is a valid Identifier.
0 invalid