Mercurial > projects > dil
view trunk/src/dil/ast/Type.d @ 797:cf2ad5df025c
Added documentation comments.
Removed Lexer.loadKeywords() and revised Lexer.isReservedIdentifier().
Also removed Lexer.getTokens().
Renamed keywords to g_reservedIds.
Renamed classNames to g_classNames.
Added PRE and DMDBUG macros.
author | Aziz K?ksal <aziz.koeksal@gmail.com> |
---|---|
date | Fri, 29 Feb 2008 22:51:24 +0100 |
parents | 5fe89bb8cbdd |
children |
line wrap: on
line source
/++ Author: Aziz Köksal License: GPL3 +/ module dil.ast.Type; import dil.ast.Node; import dil.semantic.Types; /// The root class of all type nodes. abstract class TypeNode : Node { TypeNode next; /// The next type in the type chain. Type type; /// The semantic type of this type node. this() { this(null); } this(TypeNode next) { super(NodeCategory.Type); addOptChild(next); this.next = next; } /// Returns the root type of the type chain. TypeNode baseType() { auto type = this; while (type.next) type = type.next; return type; } override abstract TypeNode copy(); }