package Ġcom . github . kor ni lo val . matlab Ċ Ċ import Ġcom . github . kor ni lo val . matlab . lexer . Mat lab Highlighting Lexer Ċ import Ġcom . github . kor ni lo val . matlab . psi . Mat lab Types Ċ import Ġcom . github . kor ni lo val . matlab . psi . Mat lab Types .* Ċ import Ġcom . intellij . lexer . Lexer Ċ import Ġcom . intellij . openapi . editor . Default Language Highlight er Colors Ċ import Ġcom . intellij . openapi . editor . Default Language Highlight er Colors . INVALID _ STRING _ ESCAPE Ċ import Ġcom . intellij . openapi . editor . Default Language Highlight er Colors . VALID _ STRING _ ESCAPE Ċ import Ġcom . intellij . openapi . editor . Highlight er Colors Ċ import Ġcom . intellij . openapi . editor . colors . Text Attributes Key Ċ import Ġcom . intellij . openapi . editor . colors . Text Attributes Key . createText Attributes Key Ċ import Ġcom . intellij . openapi . file Types . Syntax Highlight er Base Ċ import Ġcom . intellij . psi . String Esc apes Token Types Ċ import Ġcom . intellij . psi . TokenType Ċ import Ġcom . intellij . psi . tree . I ElementType ĊĊ Ċ class ĠMat lab Syntax Highlight er Ġ: ĠSyntax Highlight er Base () Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠCOMMENT Ġ= Ġcreate Text Attributes Key (" SIMPLE _ COMMENT ", ĠDefault Language Highlight er Colors . LINE _ COMMENT ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠBAD _ CHARACTER Ġ= Ġcreate Text Attributes Key (" SIMPLE _ BAD _ CHARACTER ", ĠHighlight er Colors . BAD _ CHARACTER ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠSTRING Ġ= Ġcreate Text Attributes Key (" STRING ", ĠDefault Language Highlight er Colors . STRING ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠS EM IC OL ON Ġ= Ġcreate Text Attributes Key (" SE MIC OL ON ", ĠDefault Language Highlight er Colors . SE MIC OL ON ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠID Ġ= Ġcreate Text Attributes Key (" ID ", ĠDefault Language Highlight er Colors . LOCAL _ VARIABLE ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠKEY WORD Ġ= Ġcreate Text Attributes Key (" KEYWORD ", ĠDefault Language Highlight er Colors . KEYWORD ) ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠBAD _ CHAR _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( BAD _ CHARACTER ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠVALID _ STRING _ ESCAPE _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( VALID _ STRING _ ESCAPE ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠINVALID _ STRING _ ESCAPE _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( INVALID _ STRING _ ESCAPE ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠCOMMENT _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( COMMENT ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠSTRING _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( STRING ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠS EM IC OL ON _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( SE MIC OL ON ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠKEY WORD _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( KEYWORD ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠID _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( ID ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠNUMBER _ KEYS : ĠArray < Text Attributes Key ?> Ġ= ĠarrayOf ( Default Language Highlight er Colors . NUMBER ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠEMPTY _ KEYS Ġ= ĠarrayOf Null s < Text Attributes Key >( 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetToken Highlight s ( token Type : ĠI ElementType ?): ĠArray < Text Attributes Key ?> Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( token Type Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠEMPTY _ KEYS ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( token Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMat lab Types . COMMENT Ġ-> ĠCOMMENT _ KEYS ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠS INGLE _ QUOTE _ STRING , ĠDOUBLE _ QUOTE _ STRING Ġ-> ĠSTRING _ KEYS ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠString Esc apes Token Types . VALID _ STRING _ ESCAPE _ TOKEN Ġ-> ĠVALID _ STRING _ ESCAPE _ KEYS ĊĠĠĠĠĠĠĠĠĠĠĠ ĠString Esc apes Token Types . INVALID _ CHARACTER _ ESCAPE _ TOKEN Ġ-> ĠINVALID _ STRING _ ESCAPE _ KEYS ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠMat lab Types . SE MIC OL ON Ġ-> ĠS EM IC OL ON _ KEYS ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMat lab Types . IDENTIFIER Ġ-> ĠID _ KEYS ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠFUNCTION , ĠEND , ĠIF , ĠELSE , ĠELSE IF , ĠWH ILE , ĠSW ITCH , ĠCASE , ĠOTHERWISE , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFOR , ĠCLASS DEF , ĠPROPER TIES , ĠMETHO DS , ĠEVENT S ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ-> ĠKEY WORD _ KEYS ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠINTEGER , ĠFLOAT , ĠFLOAT _ EXP ON ENTIAL Ġ-> ĠNUMBER _ KEYS ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠTokenType . BAD _ CHARACTER Ġ-> ĠBAD _ CHAR _ KEYS ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠEMPTY _ KEYS ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Highlighting Lexer (): ĠLex er Ġ= ĠMat lab Highlighting Lexer () Ċ } Ċ