Allow implicit conversion "foo*?" to "void*"
[delight/core.git] / dmd2 / identifier.h
blobdd614f230c97a4a5b5b211a1473797ff650d25dc
2 // Compiler implementation of the D programming language
3 // Copyright (c) 1999-2006 by Digital Mars
4 // All Rights Reserved
5 // written by Walter Bright
6 // http://www.digitalmars.com
7 // License for redistribution is by either the Artistic License
8 // in artistic.txt, or the GNU General Public License in gnu.txt.
9 // See the included readme.txt for details.
11 #ifndef DMD_IDENTIFIER_H
12 #define DMD_IDENTIFIER_H
14 #ifdef __DMC__
15 #pragma once
16 #endif /* __DMC__ */
18 #include "root.h"
20 struct Identifier : Object
22 int value;
23 const char *string;
24 unsigned len;
26 Identifier(const char *string, int value);
27 int equals(Object *o);
28 hash_t hashCode();
29 int compare(Object *o);
30 void print();
31 char *toChars();
32 #ifdef _DH
33 char *toHChars();
34 #endif
35 char *toHChars2();
36 int dyncast();
38 static Identifier *generateId(char *prefix);
41 #endif /* DMD_IDENTIFIER_H */