/* Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠMIT Ġlicense Ġthat Ġcan Ġbe Ċ Ġ* Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . open policy agent . ide apl ugin . ide . highlight Ċ Ċ import Ġcom . intellij . lexer . Lexer Ċ import Ġcom . intellij . openapi . editor . colors . Text Attributes Key Ċ import Ġcom . intellij . openapi . file Types . Syntax Highlight er Base Ċ import Ġcom . intellij . psi . tree . I ElementType Ċ import Ġorg . open policy agent . ide apl ugin . ide . colors . Re go Color .* Ċ import Ġorg . open policy agent . ide apl ugin . lang . lexer . Re go Lexer Adapter Ċ import Ġorg . open policy agent . ide apl ugin . lang . psi . REG O _ KEYWORD S Ċ import Ġorg . open policy agent . ide apl ugin . lang . psi . REG O _ OPERATOR Ċ import Ġorg . open policy agent . ide apl ugin . lang . psi . Re go Types Ċ Ċ /** Ċ Ġ* ĠHandle Ġthe ĠSyntax ĠHigh lighting Ġof Ġthe Ġa Ġfile . Ċ Ġ* Ċ Ġ* ĠColor Ġcan Ġbe Ġcustomize Ġbe Ġthe Ġuser Ġthank Ġthe Ġ[ org . open policy agent . ide apl ugin . ide . colors . Re go Color Settings Page ] Ċ Ġ* ĠIf Ġyou Ġwant Ġlet Ġthe Ġuser Ġcustomize Ġa Ġcolor , Ġyou Ġmust Ġupdate Ġthe Ġ[ org . open policy agent . ide apl ugin . ide . colors . Re go Color ] Ċ Ġ*/ Ċ class ĠRe go Highlight er Ġ: ĠSyntax Highlight er Base () Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġget Highlighting Lexer (): ĠLex er Ġ= ĠRe go Lexer Adapter () ĊĊĠĠĠ Ġoverride Ġfun ĠgetToken Highlight s ( token Type : ĠI ElementType ): ĠArray < Text Attributes Key > Ġ= Ġpack ( token To Color Map [ token Type ]) ĊĊĠĠĠ Ġval Ġtoken To Color Map : ĠMap < I ElementType , ĠText Attributes Key > Ġ= ĠHashMap () ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠLINE _ COMMENT . text Attributes Key , ĠRe go Types . COMMENT ) ĊĠĠĠĠĠĠĠ Ġ// ĠTODO ĠHandle Ġraw ĠString Ġ? ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠSTRING . text Attributes Key , ĠRe go Types . STRING _ TOKEN ) ĊĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠBR ACES . text Attributes Key , ĠRe go Types . R BRACE ) ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠBR ACES . text Attributes Key , ĠRe go Types . L BRACE ) ĊĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠBR ACK ETS . text Attributes Key , ĠRe go Types . R BRACK ) ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠBR ACK ETS . text Attributes Key , ĠRe go Types . L BRACK ) ĊĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠP ARENT HE SES . text Attributes Key , ĠRe go Types . RP AREN ) ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠP ARENT HE SES . text Attributes Key , ĠRe go Types . LP AREN ) ĊĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠCOM MA . text Attributes Key , ĠRe go Types . COMMA ) ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠS EM IC OL ON . text Attributes Key , ĠRe go Types . SE MIC OL ON ) ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠDOT . text Attributes Key , ĠRe go Types . DOT ) ĊĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠNUMBER . text Attributes Key , ĠRe go Types . NUMBER ) ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠBOOLEAN . text Attributes Key , ĠRe go Types . TRUE ) ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠBOOLEAN . text Attributes Key , ĠRe go Types . FALSE ) ĊĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠRE GO _ OPERATOR , ĠOPER ATOR . text Attributes Key ) ĊĠĠĠĠĠĠĠ Ġfill Map ( token To Color Map , ĠRE GO _ KEYWORD S , ĠKEY WORD . text Attributes Key ) ĊĊĠĠĠ Ġ} Ċ Ċ } ĊĊ