language-javascript-0.5.0: Parser for JavaScript

Safe HaskellSafe-Infered

Language.JavaScript.Parser.Lexer

Synopsis

Documentation

data Token Source

Lexical tokens. Each may be annotated with any comment occuring between the prior token and this one

Constructors

CommentToken

Single line comment.

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
WsToken

White space, for preservation.

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
IdentifierToken

Identifier.

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
DecimalToken

Literal: Decimal

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
HexIntegerToken

Literal: Hexadecimal Integer

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
StringToken

Literal: string, delimited by either single or double quotes

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_delimiter :: !Char
 
token_comment :: ![CommentAnnotation]
 
RegExToken

Literal: Regular Expression

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
BreakToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
CaseToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
CatchToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
ConstToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
ContinueToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
DebuggerToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
DefaultToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
DeleteToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
DoToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
ElseToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
EnumToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
FalseToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
FinallyToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
ForToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
FunctionToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
IfToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
InToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
InstanceofToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
NewToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
NullToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
ReturnToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
SwitchToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
ThisToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
ThrowToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
TrueToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
TryToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
TypeofToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
VarToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
VoidToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
WhileToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
WithToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
FutureToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
GetToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
SetToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
SemiColonToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
CommaToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
HookToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
ColonToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
OrToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
AndToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
BitwiseOrToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
BitwiseXorToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
BitwiseAndToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
StrictEqToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
EqToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
AssignToken 

Fields

token_span :: !TokenPosn
 
token_literal :: !String
 
token_comment :: ![CommentAnnotation]
 
SimpleAssignToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
StrictNeToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
NeToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
LshToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
LeToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
LtToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
UrshToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
RshToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
GeToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
GtToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
IncrementToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
DecrementToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
PlusToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
MinusToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
MulToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
DivToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
ModToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
NotToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
BitwiseNotToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
DotToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
LeftBracketToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
RightBracketToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
LeftCurlyToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
RightCurlyToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
LeftParenToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
RightParenToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
CondcommentEndToken 

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
TailToken

Stuff between last JS and EOF

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 
EOFToken

End of file

Fields

token_span :: !TokenPosn
 
token_comment :: ![CommentAnnotation]
 

data AlexPosn Source

Constructors

AlexPn !Int !Int !Int 

Instances

data Alex a Source

Instances

lexCont :: (Token -> Alex b) -> Alex bSource