Mercurial > projects > dang
view basic/Messages.d @ 92:771ac63898e2 new_gen
A few better parser errors plus renaming most of the sema classes to match that they do now. Some have changes a lot.
author | Anders Johnsen <skabet@gmail.com> |
---|---|
date | Mon, 05 May 2008 18:44:20 +0200 |
parents | a49bb982a7b0 |
children | 857f0d530789 |
line wrap: on
line source
module basic.Messages; enum : uint { InvalidSymbol, InvalidIlligaleType, UnexpectedEOFBlock, OnlyOneDotFloating, OnlyOneEFloating, UnexpectedTokMulti, UnexpectedTokSingle, UnexpectedTok, CaseValueMustBeInt, UnexpectedBeginStmt, UnexpectedTokType, ExpectedIdAfterDot, ExpectedExp, ExpectedCastType, InvalidDeclType, InvalidType, } enum MessageType { Warning, Error, } MessageEntry[uint] Messages; struct MessageEntry { MessageType type; char[] message; } static this() { Messages = [ UnexpectedEOFBlock : MessageEntry(MessageType.Error, "Unexpected end of file. Unclosed comment block"), InvalidSymbol : MessageEntry(MessageType.Error, "Read invalid symbol: '%0'"), OnlyOneDotFloating : MessageEntry(MessageType.Error, "Only one '.' is allowed in an floating number"), OnlyOneEFloating : MessageEntry(MessageType.Error, "Only one E is allowed in an floating number"), UnexpectedTokMulti : MessageEntry(MessageType.Error, "Unexpected token, got %0 expected one of %1"), UnexpectedTokSingle : MessageEntry(MessageType.Error, "Unexpected token, got %0 expected %1"), UnexpectedTok : MessageEntry(MessageType.Error, "Unexpected token %0"), CaseValueMustBeInt : MessageEntry(MessageType.Error, "Cases can only be integer literals"), UnexpectedBeginStmt : MessageEntry(MessageType.Error, "Unexpected begining of statement."), UnexpectedTokType : MessageEntry(MessageType.Error, "Unexpected token in Type parsing. Got %0"), ExpectedIdAfterDot : MessageEntry(MessageType.Error, "Expected identifier after '.'"), ExpectedExp : MessageEntry(MessageType.Error, "Expected expression"), ExpectedCastType : MessageEntry(MessageType.Error, "Expected cast type"), InvalidDeclType : MessageEntry(MessageType.Error, "Invalid declaration type"), InvalidType : MessageEntry(MessageType.Error, "Invalid type") ]; }