o a@sfdZddlmZmZmZmZmZddlmZm Z m Z m Z m Z m Z mZmZmZdgZGdddeZdS)z pygments.lexers.devicetree ~~~~~~~~~~~~~~~~~~~~~~~~~~ Lexers for Devicetree language. :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. ) RegexLexerbygroupsincludedefaultwords) CommentKeywordNameNumberOperator PunctuationStringText WhitespaceDevicetreeLexerc@seZdZdZdZddgZddgZdgZdZd ed e e j e j e j fd ed e e j e j e j fd ed e e j e j e j fd ede e j e j e j efgdefdefdefde jfde j fde j fgde ejedfdejfdejfde ejeedfedddejfdefdefd ed!efd"ejfg ed#ed$d%ed&e ejeeje j ed'fe d(ged#ed)d*edfged#ed$d%ed&e ejeeje j ed+fed)d,edfd*efgd-edfd.ej!fd/efdefd0efgd1Z"d2S)3rza Lexer for `Devicetree `_ files. .. versionadded:: 2.7 Devicetree devicetreedtsz*.dtsz*.dtsiztext/x-cz\s*(?:/[*][^*/]*?[*]/\s*)*z (#include)(z )([^\n]+)z (#define)(z (/[^*/{]+/)(z )("[^\n{]+")z)([^\n;{]*)([;]?)z\nz\s+z\\\nz//(\n|[\w\W]*?[^\\]\n)z/(\\\n)?[*][\w\W]*?[*](\\\n)?/z/(\\\n)?[*][\w\W]*z(L?)(")stringz0x[0-9a-fA-F]+z\d+z([^\s{}/*]*)(\s*)(:)z#pop) compatiblemodelphandlestatusz#address-cellsz #size-cellsregz virtual-regrangesz dma-ranges device_typenamez\b)suffixz([~!%^&*+=|?:<>/#-])z [()\[\]{},.]z/[a-zA-Z_][\w-]*(?=(?:\s*,\s*[a-zA-Z_][\w-]*|(?:z ))*\s*[=;])z [a-zA-Z_]\w* whitespacemacroz)([^/*@\s&]+|/)(@?)((?:0x)?[0-9a-fA-F,]*)(z)(\{)node statement statements;z#pushz\};"zO\\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|[0-7]{1,3})z [^\\"\n]+z\\)rrr"rootr!r rN)#__name__ __module__ __qualname____doc__raliases filenames mimetypes_wsrrPreproc Multiline PreprocFiler rrSingler Affixr HexIntegerr LabelrrReservedr AttributerFunctionrEscapetokensr;r;s  ,