{"version":3,"file":"dts.mjs","sources":["../../../../../../node_modules/highlight.js/lib/languages/dts.js"],"sourcesContent":["/*\nLanguage: Device Tree\nDescription: *.dts files used in the Linux kernel\nAuthor: Martin Braun <martin.braun@ettus.com>, Moritz Fischer <moritz.fischer@ettus.com>\nWebsite: https://elinux.org/Device_Tree_Reference\nCategory: config\n*/\n\n/** @type LanguageFn */\nfunction dts(hljs) {\n  const STRINGS = {\n    className: 'string',\n    variants: [\n      hljs.inherit(hljs.QUOTE_STRING_MODE, { begin: '((u8?|U)|L)?\"' }),\n      {\n        begin: '(u8?|U)?R\"',\n        end: '\"',\n        contains: [ hljs.BACKSLASH_ESCAPE ]\n      },\n      {\n        begin: '\\'\\\\\\\\?.',\n        end: '\\'',\n        illegal: '.'\n      }\n    ]\n  };\n\n  const NUMBERS = {\n    className: 'number',\n    variants: [\n      { begin: '\\\\b(\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)(u|U|l|L|ul|UL|f|F)' },\n      { begin: hljs.C_NUMBER_RE }\n    ],\n    relevance: 0\n  };\n\n  const PREPROCESSOR = {\n    className: 'meta',\n    begin: '#',\n    end: '$',\n    keywords: { keyword: 'if else elif endif define undef ifdef ifndef' },\n    contains: [\n      {\n        begin: /\\\\\\n/,\n        relevance: 0\n      },\n      {\n        beginKeywords: 'include',\n        end: '$',\n        keywords: { keyword: 'include' },\n        contains: [\n          hljs.inherit(STRINGS, { className: 'string' }),\n          {\n            className: 'string',\n            begin: '<',\n            end: '>',\n            illegal: '\\\\n'\n          }\n        ]\n      },\n      STRINGS,\n      hljs.C_LINE_COMMENT_MODE,\n      hljs.C_BLOCK_COMMENT_MODE\n    ]\n  };\n\n  const REFERENCE = {\n    className: 'variable',\n    begin: /&[a-z\\d_]*\\b/\n  };\n\n  const KEYWORD = {\n    className: 'keyword',\n    begin: '/[a-z][a-z\\\\d-]*/'\n  };\n\n  const LABEL = {\n    className: 'symbol',\n    begin: '^\\\\s*[a-zA-Z_][a-zA-Z\\\\d_]*:'\n  };\n\n  const CELL_PROPERTY = {\n    className: 'params',\n    relevance: 0,\n    begin: '<',\n    end: '>',\n    contains: [\n      NUMBERS,\n      REFERENCE\n    ]\n  };\n\n  const NODE = {\n    className: 'title.class',\n    begin: /[a-zA-Z_][a-zA-Z\\d_@-]*(?=\\s\\{)/,\n    relevance: 0.2\n  };\n\n  const ROOT_NODE = {\n    className: 'title.class',\n    begin: /^\\/(?=\\s*\\{)/,\n    relevance: 10\n  };\n\n  // TODO: `attribute` might be the right scope here, unsure\n  // I'm not sure if all these key names have semantic meaning or not\n  const ATTR_NO_VALUE = {\n    match: /[a-z][a-z-,]+(?=;)/,\n    relevance: 0,\n    scope: \"attr\"\n  };\n  const ATTR = {\n    relevance: 0,\n    match: [\n      /[a-z][a-z-,]+/,\n      /\\s*/,\n      /=/\n    ],\n    scope: {\n      1: \"attr\",\n      3: \"operator\"\n    }\n  };\n\n  const PUNC = {\n    scope: \"punctuation\",\n    relevance: 0,\n    // `};` combined is just to avoid tons of useless punctuation nodes\n    match: /\\};|[;{}]/\n  };\n\n  return {\n    name: 'Device Tree',\n    contains: [\n      ROOT_NODE,\n      REFERENCE,\n      KEYWORD,\n      LABEL,\n      NODE,\n      ATTR,\n      ATTR_NO_VALUE,\n      CELL_PROPERTY,\n      hljs.C_LINE_COMMENT_MODE,\n      hljs.C_BLOCK_COMMENT_MODE,\n      NUMBERS,\n      STRINGS,\n      PREPROCESSOR,\n      PUNC,\n      {\n        begin: hljs.IDENT_RE + '::',\n        keywords: \"\"\n      }\n    ]\n  };\n}\n\nmodule.exports = dts;\n"],"names":["dts","hljs","STRINGS","NUMBERS","PREPROCESSOR","REFERENCE","KEYWORD","LABEL","CELL_PROPERTY","NODE","ROOT_NODE","ATTR_NO_VALUE","ATTR","PUNC","dts_1"],"mappings":";;;;AASA,WAASA,EAAIC,GAAM;AACjB,UAAMC,IAAU;AAAA,MACd,WAAW;AAAA,MACX,UAAU;AAAA,QACRD,EAAK,QAAQA,EAAK,mBAAmB,EAAE,OAAO,iBAAiB;AAAA,QAC/D;AAAA,UACE,OAAO;AAAA,UACP,KAAK;AAAA,UACL,UAAU,CAAEA,EAAK,gBAAgB;AAAA;QAEnC;AAAA,UACE,OAAO;AAAA,UACP,KAAK;AAAA,UACL,SAAS;AAAA;;IAGjB,GAEQE,IAAU;AAAA,MACd,WAAW;AAAA,MACX,UAAU;AAAA,QACR,EAAE,OAAO,iDAAgD;AAAA,QACzD,EAAE,OAAOF,EAAK,YAAW;AAAA;MAE3B,WAAW;AAAA,IACf,GAEQG,IAAe;AAAA,MACnB,WAAW;AAAA,MACX,OAAO;AAAA,MACP,KAAK;AAAA,MACL,UAAU,EAAE,SAAS,+CAA8C;AAAA,MACnE,UAAU;AAAA,QACR;AAAA,UACE,OAAO;AAAA,UACP,WAAW;AAAA;QAEb;AAAA,UACE,eAAe;AAAA,UACf,KAAK;AAAA,UACL,UAAU,EAAE,SAAS,UAAS;AAAA,UAC9B,UAAU;AAAA,YACRH,EAAK,QAAQC,GAAS,EAAE,WAAW,SAAQ,CAAE;AAAA,YAC7C;AAAA,cACE,WAAW;AAAA,cACX,OAAO;AAAA,cACP,KAAK;AAAA,cACL,SAAS;AAAA;;;QAIfA;AAAA,QACAD,EAAK;AAAA,QACLA,EAAK;AAAA;IAEX,GAEQI,IAAY;AAAA,MAChB,WAAW;AAAA,MACX,OAAO;AAAA,IACX,GAEQC,IAAU;AAAA,MACd,WAAW;AAAA,MACX,OAAO;AAAA,IACX,GAEQC,IAAQ;AAAA,MACZ,WAAW;AAAA,MACX,OAAO;AAAA,IACX,GAEQC,IAAgB;AAAA,MACpB,WAAW;AAAA,MACX,WAAW;AAAA,MACX,OAAO;AAAA,MACP,KAAK;AAAA,MACL,UAAU;AAAA,QACRL;AAAA,QACAE;AAAA;IAEN,GAEQI,IAAO;AAAA,MACX,WAAW;AAAA,MACX,OAAO;AAAA,MACP,WAAW;AAAA,IACf,GAEQC,IAAY;AAAA,MAChB,WAAW;AAAA,MACX,OAAO;AAAA,MACP,WAAW;AAAA,IACf,GAIQC,IAAgB;AAAA,MACpB,OAAO;AAAA,MACP,WAAW;AAAA,MACX,OAAO;AAAA,IACX,GACQC,IAAO;AAAA,MACX,WAAW;AAAA,MACX,OAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA;MAEF,OAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAG;AAAA;IAET,GAEQC,IAAO;AAAA,MACX,OAAO;AAAA,MACP,WAAW;AAAA;AAAA,MAEX,OAAO;AAAA,IACX;AAEE,WAAO;AAAA,MACL,MAAM;AAAA,MACN,UAAU;AAAA,QACRH;AAAA,QACAL;AAAA,QACAC;AAAA,QACAC;AAAA,QACAE;AAAA,QACAG;AAAA,QACAD;AAAA,QACAH;AAAA,QACAP,EAAK;AAAA,QACLA,EAAK;AAAA,QACLE;AAAA,QACAD;AAAA,QACAE;AAAA,QACAS;AAAA,QACA;AAAA,UACE,OAAOZ,EAAK,WAAW;AAAA,UACvB,UAAU;AAAA;;IAGlB;AAAA,EACA;AAEA,SAAAa,IAAiBd;;","x_google_ignoreList":[0]}