1{"version":3,"sources":["webpack:///./node_modules/monaco-editor/esm/vs/basic-languages/systemverilog/systemverilog.js"],"names":[],"mappings":";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA,WAAW,KAAK;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB;AACjC,SAAS,SAAS,YAAY,GAAG;AACjC,SAAS,wBAAwB;AACjC,SAAS,sDAAsD;AAC/D,SAAS;AACT;AACA;AACA,SAAS,SAAS,YAAY,GAAG;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA,SAAS,mCAAmC,YAAY,GAAG;AAC3D,SAAS,wDAAwD;AACjE,SAAS,mDAAmD;AAC5D,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,IAAI,OAAO,IAAI;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B,0CAA0C,sBAAsB;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,uDAAuD;AACrF;AACA;AACA;AACA,aAAa,oCAAoC;AACjD;AACA,aAAa,yBAAyB;AACtC;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,sBAAsB;AACnC;AACA,gBAAgB;AAChB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,sBAAsB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,yBAAyB;AACtC,+BAA+B,+CAA+C;AAC9E,8BAA8B,GAAG,UAAU,kCAAkC;AAC7E,yBAAyB,GAAG,UAAU,kCAAkC;AACxE;AACA,eAAe;AACf;AACA;AACA,aAAa,oCAAoC;AACjD,aAAa,yBAAyB;AACtC;AACA,aAAa,sBAAsB;AACnC,aAAa,sBAAsB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA","file":"1.1.js","sourcesContent":["/*---------------------------------------------------------------------------------------------\n *  Copyright (c) Microsoft Corporation. All rights reserved.\n *  Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nexport var conf = {\n    comments: {\n        lineComment: '//',\n        blockComment: ['/*', '*/']\n    },\n    brackets: [\n        ['{', '}'],\n        ['[', ']'],\n        ['(', ')'],\n        ['begin', 'end'],\n        ['case', 'endcase'],\n        ['casex', 'endcase'],\n        ['casez', 'endcase'],\n        ['checker', 'endchecker'],\n        ['class', 'endclass'],\n        ['clocking', 'endclocking'],\n        ['config', 'endconfig'],\n        ['function', 'endfunction'],\n        ['generate', 'endgenerate'],\n        ['group', 'endgroup'],\n        ['interface', 'endinterface'],\n        ['module', 'endmodule'],\n        ['package', 'endpackage'],\n        ['primitive', 'endprimitive'],\n        ['program', 'endprogram'],\n        ['property', 'endproperty'],\n        ['specify', 'endspecify'],\n        ['sequence', 'endsequence'],\n        ['table', 'endtable'],\n        ['task', 'endtask']\n    ],\n    autoClosingPairs: [\n        { open: '[', close: ']' },\n        { open: '{', close: '}' },\n        { open: '(', close: ')' },\n        { open: \"'\", close: \"'\", notIn: ['string', 'comment'] },\n        { open: '\"', close: '\"', notIn: ['string'] }\n    ],\n    surroundingPairs: [\n        { open: '{', close: '}' },\n        { open: '[', close: ']' },\n        { open: '(', close: ')' },\n        { open: '\"', close: '\"' },\n        { open: \"'\", close: \"'\" }\n    ],\n    folding: {\n        offSide: false,\n        markers: {\n            start: new RegExp('^(?:\\\\s*|.*(?!\\\\/[\\\\/\\\\*])[^\\\\w])(?:begin|case(x|z)?|class|clocking|config|covergroup|function|generate|interface|module|package|primitive|property|program|sequence|specify|table|task)\\\\b'),\n            end: new RegExp('^(?:\\\\s*|.*(?!\\\\/[\\\\/\\\\*])[^\\\\w])(?:end|endcase|endclass|endclocking|endconfig|endgroup|endfunction|endgenerate|endinterface|endmodule|endpackage|endprimitive|endproperty|endprogram|endsequence|endspecify|endtable|endtask)\\\\b')\n        }\n    }\n};\nexport var language = {\n    defaultToken: '',\n    tokenPostfix: '.sv',\n    brackets: [\n        { token: 'delimiter.curly', open: '{', close: '}' },\n        { token: 'delimiter.parenthesis', open: '(', close: ')' },\n        { token: 'delimiter.square', open: '[', close: ']' },\n        { token: 'delimiter.angle', open: '<', close: '>' }\n    ],\n    keywords: [\n        'accept_on',\n        'alias',\n        'always',\n        'always_comb',\n        'always_ff',\n        'always_latch',\n        'and',\n        'assert',\n        'assign',\n        'assume',\n        'automatic',\n        'before',\n        'begin',\n        'bind',\n        'bins',\n        'binsof',\n        'bit',\n        'break',\n        'buf',\n        'bufif0',\n        'bufif1',\n        'byte',\n        'case',\n        'casex',\n        'casez',\n        'cell',\n        'chandle',\n        'checker',\n        'class',\n        'clocking',\n        'cmos',\n        'config',\n        'const',\n        'constraint',\n        'context',\n        'continue',\n        'cover',\n        'covergroup',\n        'coverpoint',\n        'cross',\n        'deassign',\n        'default',\n        'defparam',\n        'design',\n        'disable',\n        'dist',\n        'do',\n        'edge',\n        'else',\n        'end',\n        'endcase',\n        'endchecker',\n        'endclass',\n        'endclocking',\n        'endconfig',\n        'endfunction',\n        'endgenerate',\n        'endgroup',\n        'endinterface',\n        'endmodule',\n        'endpackage',\n        'endprimitive',\n        'endprogram',\n        'endproperty',\n        'endspecify',\n        'endsequence',\n        'endtable',\n        'endtask',\n        'enum',\n        'event',\n        'eventually',\n        'expect',\n        'export',\n        'extends',\n        'extern',\n        'final',\n        'first_match',\n        'for',\n        'force',\n        'foreach',\n        'forever',\n        'fork',\n        'forkjoin',\n        'function',\n        'generate',\n        'genvar',\n        'global',\n        'highz0',\n        'highz1',\n        'if',\n        'iff',\n        'ifnone',\n        'ignore_bins',\n        'illegal_bins',\n        'implements',\n        'implies',\n        'import',\n        'incdir',\n        'include',\n        'initial',\n        'inout',\n        'input',\n        'inside',\n        'instance',\n        'int',\n        'integer',\n        'interconnect',\n        'interface',\n        'intersect',\n        'join',\n        'join_any',\n        'join_none',\n        'large',\n        'let',\n        'liblist',\n        'library',\n        'local',\n        'localparam',\n        'logic',\n        'longint',\n        'macromodule',\n        'matches',\n        'medium',\n        'modport',\n        'module',\n        'nand',\n        'negedge',\n        'nettype',\n        'new',\n        'nexttime',\n        'nmos',\n        'nor',\n        'noshowcancelled',\n        'not',\n        'notif0',\n        'notif1',\n        'null',\n        'or',\n        'output',\n        'package',\n        'packed',\n        'parameter',\n        'pmos',\n        'posedge',\n        'primitive',\n        'priority',\n        'program',\n        'property',\n        'protected',\n        'pull0',\n        'pull1',\n        'pulldown',\n        'pullup',\n        'pulsestyle_ondetect',\n        'pulsestyle_onevent',\n        'pure',\n        'rand',\n        'randc',\n        'randcase',\n        'randsequence',\n        'rcmos',\n        'real',\n        'realtime',\n        'ref',\n        'reg',\n        'reject_on',\n        'release',\n        'repeat',\n        'restrict',\n        'return',\n        'rnmos',\n        'rpmos',\n        'rtran',\n        'rtranif0',\n        'rtranif1',\n        's_always',\n        's_eventually',\n        's_nexttime',\n        's_until',\n        's_until_with',\n        'scalared',\n        'sequence',\n        'shortint',\n        'shortreal',\n        'showcancelled',\n        'signed',\n        'small',\n        'soft',\n        'solve',\n        'specify',\n        'specparam',\n        'static',\n        'string',\n        'strong',\n        'strong0',\n        'strong1',\n        'struct',\n        'super',\n        'supply0',\n        'supply1',\n        'sync_accept_on',\n        'sync_reject_on',\n        'table',\n        'tagged',\n        'task',\n        'this',\n        'throughout',\n        'time',\n        'timeprecision',\n        'timeunit',\n        'tran',\n        'tranif0',\n        'tranif1',\n        'tri',\n        'tri0',\n        'tri1',\n        'triand',\n        'trior',\n        'trireg',\n        'type',\n        'typedef',\n        'union',\n        'unique',\n        'unique0',\n        'unsigned',\n        'until',\n        'until_with',\n        'untyped',\n        'use',\n        'uwire',\n        'var',\n        'vectored',\n        'virtual',\n        'void',\n        'wait',\n        'wait_order',\n        'wand',\n        'weak',\n        'weak0',\n        'weak1',\n        'while',\n        'wildcard',\n        'wire',\n        'with',\n        'within',\n        'wor',\n        'xnor',\n        'xor'\n    ],\n    builtin_gates: [\n        'and',\n        'nand',\n        'nor',\n        'or',\n        'xor',\n        'xnor',\n        'buf',\n        'not',\n        'bufif0',\n        'bufif1',\n        'notif1',\n        'notif0',\n        'cmos',\n        'nmos',\n        'pmos',\n        'rcmos',\n        'rnmos',\n        'rpmos',\n        'tran',\n        'tranif1',\n        'tranif0',\n        'rtran',\n        'rtranif1',\n        'rtranif0'\n    ],\n    operators: [\n        // assignment operators\n        '=',\n        '+=',\n        '-=',\n        '*=',\n        '/=',\n        '%=',\n        '&=',\n        '|=',\n        '^=',\n        '<<=',\n        '>>+',\n        '<<<=',\n        '>>>=',\n        // conditional expression\n        '?',\n        ':',\n        // Unary operators\n        '+',\n        '-',\n        '!',\n        '~',\n        '&',\n        '~&',\n        '|',\n        '~|',\n        '^',\n        '~^',\n        '^~',\n        //binary operators\n        '+',\n        '-',\n        '*',\n        '/',\n        '%',\n        '==',\n        '!=',\n        '===',\n        '!==',\n        '==?',\n        '!=?',\n        '&&',\n        '||',\n        '**',\n        '<',\n        '<=',\n        '>',\n        '>=',\n        '&',\n        '|',\n        '^',\n        '>>',\n        '<<',\n        '>>>',\n        '<<<',\n        // increment or decrement operator\n        '++',\n        '--',\n        //binary logical operator\n        '->',\n        '<->',\n        // binary set membership operator\n        'inside',\n        // binary distrubution operator\n        'dist',\n        '::',\n        '+:',\n        '-:',\n        '*>',\n        '&&&',\n        '|->',\n        '|=>',\n        '#=#'\n    ],\n    // we include these common regular expressions\n    symbols: /[=><!~?:&|+\\-*\\/\\^%#]+/,\n    escapes: /%%|\\\\(?:[antvf\\\\\"']|x[0-9A-Fa-f]{1,2}|[0-7]{1,3})/,\n    identifier: /(?:[a-zA-Z_][a-zA-Z0-9_$\\.]*|\\\\\\S+ )/,\n    systemcall: /[$][a-zA-Z0-9_]+/,\n    timeunits: /s|ms|us|ns|ps|fs/,\n    // The main tokenizer for our languages\n    tokenizer: {\n        root: [\n            // module instances\n            [\n                /^(\\s*)(@identifier)/,\n                [\n                    '',\n                    {\n                        cases: {\n                            '@builtin_gates': {\n                                token: 'keyword.$2',\n                                next: '@module_instance'\n                            },\n                            '@keywords': { token: 'keyword.$2' },\n                            '@default': {\n                                token: 'identifier',\n                                next: '@module_instance'\n                            }\n                        }\n                    }\n                ]\n            ],\n            // include statements\n            [/^\\s*`include/, { token: 'keyword.directive.include', next: '@include' }],\n            // Preprocessor directives\n            [/^\\s*`\\s*\\w+/, 'keyword'],\n            // identifiers and keywords\n            { include: '@identifier_or_keyword' },\n            // whitespace\n            { include: '@whitespace' },\n            // (* attributes *).\n            [/\\(\\*.*\\*\\)/, 'annotation'],\n            // Systemcall\n            [/@systemcall/, 'variable.predefined'],\n            // delimiters and operators\n            [/[{}()\\[\\]]/, '@brackets'],\n            [/[<>](?!@symbols)/, '@brackets'],\n            [\n                /@symbols/,\n                {\n                    cases: {\n                        '@operators': 'delimiter',\n                        '@default': ''\n                    }\n                }\n            ],\n            // numbers\n            { include: '@numbers' },\n            // delimiter: after number because of .\\d floats\n            [/[;,.]/, 'delimiter'],\n            // strings\n            { include: '@strings' }\n        ],\n        identifier_or_keyword: [\n            [\n                /@identifier/,\n                {\n                    cases: {\n                        '@keywords': { token: 'keyword.$0' },\n                        '@default': 'identifier'\n                    }\n                }\n            ]\n        ],\n        numbers: [\n            [/\\d+?[\\d_]*(?:\\.[\\d_]+)?[eE][\\-+]?\\d+/, 'number.float'],\n            [/\\d+?[\\d_]*\\.[\\d_]+(?:\\s*@timeunits)?/, 'number.float'],\n            [/(?:\\d+?[\\d_]*\\s*)?'[sS]?[dD]\\s*[0-9xXzZ?]+?[0-9xXzZ?_]*/, 'number'],\n            [/(?:\\d+?[\\d_]*\\s*)?'[sS]?[bB]\\s*[0-1xXzZ?]+?[0-1xXzZ?_]*/, 'number.binary'],\n            [/(?:\\d+?[\\d_]*\\s*)?'[sS]?[oO]\\s*[0-7xXzZ?]+?[0-7xXzZ?_]*/, 'number.octal'],\n            [/(?:\\d+?[\\d_]*\\s*)?'[sS]?[hH]\\s*[0-9a-fA-FxXzZ?]+?[0-9a-fA-FxXzZ?_]*/, 'number.hex'],\n            [/1step/, 'number'],\n            [/[\\dxXzZ]+?[\\dxXzZ_]*(?:\\s*@timeunits)?/, 'number'],\n            [/'[01xXzZ]+/, 'number']\n        ],\n        module_instance: [\n            { include: '@whitespace' },\n            [/(#?)(\\()/, ['', { token: '@brackets', next: '@port_connection' }]],\n            [/@identifier\\s*[;={}\\[\\],]/, { token: '@rematch', next: '@pop' }],\n            [/@symbols|[;={}\\[\\],]/, { token: '@rematch', next: '@pop' }],\n            [/@identifier/, 'type'],\n            [/;/, 'delimiter', '@pop']\n        ],\n        port_connection: [\n            { include: '@identifier_or_keyword' },\n            { include: '@whitespace' },\n            [/@systemcall/, 'variable.predefined'],\n            { include: '@numbers' },\n            { include: '@strings' },\n            [/[,]/, 'delimiter'],\n            [/\\(/, '@brackets', '@port_connection'],\n            [/\\)/, '@brackets', '@pop']\n        ],\n        whitespace: [\n            [/[ \\t\\r\\n]+/, ''],\n            [/\\/\\*/, 'comment', '@comment'],\n            [/\\/\\/.*$/, 'comment']\n        ],\n        comment: [\n            [/[^\\/*]+/, 'comment'],\n            [/\\*\\//, 'comment', '@pop'],\n            [/[\\/*]/, 'comment']\n        ],\n        strings: [\n            [/\"([^\"\\\\]|\\\\.)*$/, 'string.invalid'],\n            [/\"/, 'string', '@string']\n        ],\n        string: [\n            [/[^\\\\\"]+/, 'string'],\n            [/@escapes/, 'string.escape'],\n            [/\\\\./, 'string.escape.invalid'],\n            [/\"/, 'string', '@pop']\n        ],\n        include: [\n            [\n                /(\\s*)(\")([\\w*\\/*]*)(.\\w*)(\")/,\n                [\n                    '',\n                    'string.include.identifier',\n                    'string.include.identifier',\n                    'string.include.identifier',\n                    { token: 'string.include.identifier', next: '@pop' }\n                ]\n            ],\n            [\n                /(\\s*)(<)([\\w*\\/*]*)(.\\w*)(>)/,\n                [\n                    '',\n                    'string.include.identifier',\n                    'string.include.identifier',\n                    'string.include.identifier',\n                    { token: 'string.include.identifier', next: '@pop' }\n                ]\n            ]\n        ]\n    }\n};\n"],"sourceRoot":""}