package Ġnl . h ann ah sten . tex ify idea Ċ Ċ import Ġcom . intellij . lang . AST Node Ċ import Ġcom . intellij . lang . Language Ċ import Ġcom . intellij . lang . Parser Definition Ċ import Ġcom . intellij . lang . Parser Definition . Space Requirements Ċ import Ġcom . intellij . lang . Psi Parser Ċ import Ġcom . intellij . lexer . Lexer Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . psi . File View Provider Ċ import Ġcom . intellij . psi . Psi Element Ċ import Ġcom . intellij . psi . Psi File Ċ import Ġcom . intellij . psi . TokenType Ċ import Ġcom . intellij . psi . stubs . Psi File Stub Impl Ċ import Ġcom . intellij . psi . tree . I Stub File ElementType Ċ import Ġcom . intellij . psi . tree . Token Set Ċ import Ġnl . h ann ah sten . tex ify idea . file . Lat ex File Ċ import Ġnl . h ann ah sten . tex ify idea . parser . Lat ex Parser Ċ import Ġnl . h ann ah sten . tex ify idea . psi . Lat ex Types Ċ Ċ /** Ċ Ġ* Ġ@ author ĠSt en ĠW essel Ċ Ġ*/ Ċ class ĠLat ex Parser Definition Ġ: ĠParser Definition Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġcreate Lexer ( project : ĠProject ): ĠLex er Ġ= ĠLat ex Lexer Adapter () ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Parser ( project : ĠProject ): ĠPsi Parser Ġ= ĠLat ex Parser () ĊĊĠĠĠ Ġoverride Ġfun ĠgetFile NodeType (): ĠI Stub File ElementType < *> Ġ= ĠFILE ĊĊĠĠĠ Ġoverride Ġfun Ġget Whitespace Tokens (): ĠToken Set Ġ= ĠWH ITE _ SP ACES ĊĊĠĠĠ Ġoverride Ġfun Ġget Comment Tokens (): ĠToken Set Ġ= ĠCOMMENT S ĊĊĠĠĠ Ġoverride Ġfun ĠgetString Literal Elements (): ĠToken Set Ġ= ĠNORMAL _ TEXT ĊĊĠĠĠ Ġoverride Ġfun ĠcreateElement ( node : ĠAST Node ): ĠPsi Element Ġ= ĠLat ex Types . Factory . createElement ( node ) ĊĊĠĠĠ Ġoverride Ġfun Ġcreate File ( view Provider : ĠFile View Provider ): ĠPsi File Ġ= ĠLat ex File ( view Provider ) ĊĊĠĠĠ Ġoverride Ġfun Ġspace Ex istence Type Between Tokens ( ĊĠĠĠĠĠĠĠ Ġleft : ĠAST Node , ĊĠĠĠĠĠĠĠ Ġright : ĠAST Node ĊĠĠĠ Ġ): ĠSpace Requirements Ġ= ĠSpace Requirements . MAY ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠWH ITE _ SP ACES Ġ= ĠToken Set . create ( TokenType . WHITE _ SPACE ) ĊĠĠĠĠĠĠĠ Ġval ĠCOMMENT S Ġ= ĠToken Set . create ( Lat ex Types . COMMENT _ TOKEN ) ĊĠĠĠĠĠĠĠ Ġval ĠNORMAL _ TEXT Ġ= ĠToken Set . create ( Lat ex Types . NORMAL _ TEXT ) ĊĠĠĠĠĠĠĠ Ġval ĠFILE : ĠI Stub File ElementType < *> Ġ= Ġobject Ġ: ĠI Stub File ElementType < Lat ex File Stub >( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLanguage . find Instance ( Lat ex Language :: class . java ) ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Stub Version (): ĠInt Ġ= Ġ 7 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠLat ex File Stub ( file : ĠLat ex File ) Ġ: ĠPsi File Stub Impl < Lat ex File >( file ) Ċ }