module Text.Highlighter.Lexers.GLShader (lexer) where

import Text.Regex.PCRE.Light
import Text.Highlighter.Types

lexer :: Lexer
lexer = Lexer
    { lName = "\71\76\83\76"
    , lAliases = ["\103\108\115\108"]
    , lExtensions = ["\46\118\101\114\116", "\46\102\114\97\103", "\46\103\101\111"]
    , lMimetypes = ["\116\101\120\116\47\120\45\103\108\115\108\115\114\99"]
    , lStart = root'
    , lFlags = [multiline]
    }

root' :: TokenMatcher
root' =
    [ tok "\94\35\46\42" (Arbitrary "\67\111\109\109\101\110\116" :. Arbitrary "\80\114\101\112\114\111\99")
    , tok "\47\47\46\42" (Arbitrary "\67\111\109\109\101\110\116" :. Arbitrary "\83\105\110\103\108\101")
    , tok "\47\92\42\91\92\119\92\87\93\42\92\42\47" (Arbitrary "\67\111\109\109\101\110\116" :. Arbitrary "\77\117\108\116\105\108\105\110\101")
    , tok "\92\43\124\45\124\126\124\33\61\63\124\92\42\124\47\124\37\124\60\60\124\62\62\124\60\61\63\124\62\61\63\124\61\61\63\124\38\38\63\124\92\94\124\92\124\92\124\63" (Arbitrary "\79\112\101\114\97\116\111\114")
    , tok "\91\63\58\93" (Arbitrary "\79\112\101\114\97\116\111\114")
    , tok "\92\98\100\101\102\105\110\101\100\92\98" (Arbitrary "\79\112\101\114\97\116\111\114")
    , tok "\91\59\123\125\40\41\44\92\91\92\93\93" (Arbitrary "\80\117\110\99\116\117\97\116\105\111\110")
    , tok "\91\43\45\93\63\92\100\42\92\46\92\100\43\40\91\101\69\93\91\45\43\93\63\92\100\43\41\63" (Arbitrary "\76\105\116\101\114\97\108" :. Arbitrary "\78\117\109\98\101\114" :. Arbitrary "\70\108\111\97\116")
    , tok "\91\43\45\93\63\92\100\43\92\46\92\100\42\40\91\101\69\93\91\45\43\93\63\92\100\43\41\63" (Arbitrary "\76\105\116\101\114\97\108" :. Arbitrary "\78\117\109\98\101\114" :. Arbitrary "\70\108\111\97\116")
    , tok "\48\91\120\88\93\91\48\45\57\97\45\102\65\45\70\93\42" (Arbitrary "\76\105\116\101\114\97\108" :. Arbitrary "\78\117\109\98\101\114" :. Arbitrary "\72\101\120")
    , tok "\48\91\48\45\55\93\42" (Arbitrary "\76\105\116\101\114\97\108" :. Arbitrary "\78\117\109\98\101\114" :. Arbitrary "\79\99\116\97\108")
    , tok "\91\49\45\57\93\91\48\45\57\93\42" (Arbitrary "\76\105\116\101\114\97\108" :. Arbitrary "\78\117\109\98\101\114" :. Arbitrary "\73\110\116\101\103\101\114")
    , tok "\92\98\40\97\116\116\114\105\98\117\116\101\124\99\111\110\115\116\124\117\110\105\102\111\114\109\124\118\97\114\121\105\110\103\124\99\101\110\116\114\111\105\100\124\98\114\101\97\107\124\99\111\110\116\105\110\117\101\124\100\111\124\102\111\114\124\119\104\105\108\101\124\105\102\124\101\108\115\101\124\105\110\124\111\117\116\124\105\110\111\117\116\124\102\108\111\97\116\124\105\110\116\124\118\111\105\100\124\98\111\111\108\124\116\114\117\101\124\102\97\108\115\101\124\105\110\118\97\114\105\97\110\116\124\100\105\115\99\97\114\100\124\114\101\116\117\114\110\124\109\97\116\91\50\51\52\93\124\109\97\116\91\50\51\52\93\120\91\50\51\52\93\124\118\101\99\91\50\51\52\93\124\91\105\98\93\118\101\99\91\50\51\52\93\124\115\97\109\112\108\101\114\91\49\50\51\93\68\124\115\97\109\112\108\101\114\67\117\98\101\124\115\97\109\112\108\101\114\91\49\50\93\68\83\104\97\100\111\119\124\115\116\114\117\99\116\41\92\98" (Arbitrary "\75\101\121\119\111\114\100")
    , tok "\92\98\40\97\115\109\124\99\108\97\115\115\124\117\110\105\111\110\124\101\110\117\109\124\116\121\112\101\100\101\102\124\116\101\109\112\108\97\116\101\124\116\104\105\115\124\112\97\99\107\101\100\124\103\111\116\111\124\115\119\105\116\99\104\124\100\101\102\97\117\108\116\124\105\110\108\105\110\101\124\110\111\105\110\108\105\110\101\124\118\111\108\97\116\105\108\101\124\112\117\98\108\105\99\124\115\116\97\116\105\99\124\101\120\116\101\114\110\124\101\120\116\101\114\110\97\108\124\105\110\116\101\114\102\97\99\101\124\108\111\110\103\124\115\104\111\114\116\124\100\111\117\98\108\101\124\104\97\108\102\124\102\105\120\101\100\124\117\110\115\105\103\110\101\100\124\108\111\119\112\124\109\101\100\105\117\109\112\124\104\105\103\104\112\124\112\114\101\99\105\115\105\111\110\124\105\110\112\117\116\124\111\117\116\112\117\116\124\104\118\101\99\91\50\51\52\93\124\91\100\102\93\118\101\99\91\50\51\52\93\124\115\97\109\112\108\101\114\91\50\51\93\68\82\101\99\116\124\115\97\109\112\108\101\114\50\68\82\101\99\116\83\104\97\100\111\119\124\115\105\122\101\111\102\124\99\97\115\116\124\110\97\109\101\115\112\97\99\101\124\117\115\105\110\103\41\92\98" (Arbitrary "\75\101\121\119\111\114\100")
    , tok "\91\97\45\122\65\45\90\95\93\91\97\45\122\65\45\90\95\48\45\57\93\42" (Arbitrary "\78\97\109\101" :. Arbitrary "\86\97\114\105\97\98\108\101")
    , tok "\92\46" (Arbitrary "\80\117\110\99\116\117\97\116\105\111\110")
    , tok "\92\115\43" (Arbitrary "\84\101\120\116")
    ]