datajunction-ui
Version:
DataJunction UI
1 lines • 11.6 kB
Source Map (JSON)
{"version":3,"file":"asn1-OOsVM4yU.cjs","sources":["../node_modules/@codemirror/legacy-modes/mode/asn1.js"],"sourcesContent":["function words(str) {\n var obj = {}, words = str.split(\" \");\n for (var i = 0; i < words.length; ++i) obj[words[i]] = true;\n return obj;\n}\n\nconst defaults = {\n keywords: words(\"DEFINITIONS OBJECTS IF DERIVED INFORMATION ACTION\" +\n \" REPLY ANY NAMED CHARACTERIZED BEHAVIOUR REGISTERED\" +\n \" WITH AS IDENTIFIED CONSTRAINED BY PRESENT BEGIN\" +\n \" IMPORTS FROM UNITS SYNTAX MIN-ACCESS MAX-ACCESS\" +\n \" MINACCESS MAXACCESS REVISION STATUS DESCRIPTION\" +\n \" SEQUENCE SET COMPONENTS OF CHOICE DistinguishedName\" +\n \" ENUMERATED SIZE MODULE END INDEX AUGMENTS EXTENSIBILITY\" +\n \" IMPLIED EXPORTS\"),\n cmipVerbs: words(\"ACTIONS ADD GET NOTIFICATIONS REPLACE REMOVE\"),\n compareTypes: words(\"OPTIONAL DEFAULT MANAGED MODULE-TYPE MODULE_IDENTITY\" +\n \" MODULE-COMPLIANCE OBJECT-TYPE OBJECT-IDENTITY\" +\n \" OBJECT-COMPLIANCE MODE CONFIRMED CONDITIONAL\" +\n \" SUBORDINATE SUPERIOR CLASS TRUE FALSE NULL\" +\n \" TEXTUAL-CONVENTION\"),\n status: words(\"current deprecated mandatory obsolete\"),\n tags: words(\"APPLICATION AUTOMATIC EXPLICIT IMPLICIT PRIVATE TAGS\" +\n \" UNIVERSAL\"),\n storage: words(\"BOOLEAN INTEGER OBJECT IDENTIFIER BIT OCTET STRING\" +\n \" UTCTime InterfaceIndex IANAifType CMIP-Attribute\" +\n \" REAL PACKAGE PACKAGES IpAddress PhysAddress\" +\n \" NetworkAddress BITS BMPString TimeStamp TimeTicks\" +\n \" TruthValue RowStatus DisplayString GeneralString\" +\n \" GraphicString IA5String NumericString\" +\n \" PrintableString SnmpAdminString TeletexString\" +\n \" UTF8String VideotexString VisibleString StringStore\" +\n \" ISO646String T61String UniversalString Unsigned32\" +\n \" Integer32 Gauge Gauge32 Counter Counter32 Counter64\"),\n modifier: words(\"ATTRIBUTE ATTRIBUTES MANDATORY-GROUP MANDATORY-GROUPS\" +\n \" GROUP GROUPS ELEMENTS EQUALITY ORDERING SUBSTRINGS\" +\n \" DEFINED\"),\n accessTypes: words(\"not-accessible accessible-for-notify read-only\" +\n \" read-create read-write\"),\n multiLineStrings: true\n}\n\nexport function asn1(parserConfig) {\n var keywords = parserConfig.keywords || defaults.keywords,\n cmipVerbs = parserConfig.cmipVerbs || defaults.cmipVerbs,\n compareTypes = parserConfig.compareTypes || defaults.compareTypes,\n status = parserConfig.status || defaults.status,\n tags = parserConfig.tags || defaults.tags,\n storage = parserConfig.storage || defaults.storage,\n modifier = parserConfig.modifier || defaults.modifier,\n accessTypes = parserConfig.accessTypes|| defaults.accessTypes,\n multiLineStrings = parserConfig.multiLineStrings || defaults.multiLineStrings,\n indentStatements = parserConfig.indentStatements !== false;\n var isOperatorChar = /[\\|\\^]/;\n var curPunc;\n\n function tokenBase(stream, state) {\n var ch = stream.next();\n if (ch == '\"' || ch == \"'\") {\n state.tokenize = tokenString(ch);\n return state.tokenize(stream, state);\n }\n if (/[\\[\\]\\(\\){}:=,;]/.test(ch)) {\n curPunc = ch;\n return \"punctuation\";\n }\n if (ch == \"-\"){\n if (stream.eat(\"-\")) {\n stream.skipToEnd();\n return \"comment\";\n }\n }\n if (/\\d/.test(ch)) {\n stream.eatWhile(/[\\w\\.]/);\n return \"number\";\n }\n if (isOperatorChar.test(ch)) {\n stream.eatWhile(isOperatorChar);\n return \"operator\";\n }\n\n stream.eatWhile(/[\\w\\-]/);\n var cur = stream.current();\n if (keywords.propertyIsEnumerable(cur)) return \"keyword\";\n if (cmipVerbs.propertyIsEnumerable(cur)) return \"variableName\";\n if (compareTypes.propertyIsEnumerable(cur)) return \"atom\";\n if (status.propertyIsEnumerable(cur)) return \"comment\";\n if (tags.propertyIsEnumerable(cur)) return \"typeName\";\n if (storage.propertyIsEnumerable(cur)) return \"modifier\";\n if (modifier.propertyIsEnumerable(cur)) return \"modifier\";\n if (accessTypes.propertyIsEnumerable(cur)) return \"modifier\";\n\n return \"variableName\";\n }\n\n function tokenString(quote) {\n return function(stream, state) {\n var escaped = false, next, end = false;\n while ((next = stream.next()) != null) {\n if (next == quote && !escaped){\n var afterNext = stream.peek();\n //look if the character if the quote is like the B in '10100010'B\n if (afterNext){\n afterNext = afterNext.toLowerCase();\n if(afterNext == \"b\" || afterNext == \"h\" || afterNext == \"o\")\n stream.next();\n }\n end = true; break;\n }\n escaped = !escaped && next == \"\\\\\";\n }\n if (end || !(escaped || multiLineStrings))\n state.tokenize = null;\n return \"string\";\n };\n }\n\n function Context(indented, column, type, align, prev) {\n this.indented = indented;\n this.column = column;\n this.type = type;\n this.align = align;\n this.prev = prev;\n }\n function pushContext(state, col, type) {\n var indent = state.indented;\n if (state.context && state.context.type == \"statement\")\n indent = state.context.indented;\n return state.context = new Context(indent, col, type, null, state.context);\n }\n function popContext(state) {\n var t = state.context.type;\n if (t == \")\" || t == \"]\" || t == \"}\")\n state.indented = state.context.indented;\n return state.context = state.context.prev;\n }\n\n //Interface\n return {\n name: \"asn1\",\n startState: function() {\n return {\n tokenize: null,\n context: new Context(-2, 0, \"top\", false),\n indented: 0,\n startOfLine: true\n };\n },\n\n token: function(stream, state) {\n var ctx = state.context;\n if (stream.sol()) {\n if (ctx.align == null) ctx.align = false;\n state.indented = stream.indentation();\n state.startOfLine = true;\n }\n if (stream.eatSpace()) return null;\n curPunc = null;\n var style = (state.tokenize || tokenBase)(stream, state);\n if (style == \"comment\") return style;\n if (ctx.align == null) ctx.align = true;\n\n if ((curPunc == \";\" || curPunc == \":\" || curPunc == \",\")\n && ctx.type == \"statement\"){\n popContext(state);\n }\n else if (curPunc == \"{\") pushContext(state, stream.column(), \"}\");\n else if (curPunc == \"[\") pushContext(state, stream.column(), \"]\");\n else if (curPunc == \"(\") pushContext(state, stream.column(), \")\");\n else if (curPunc == \"}\") {\n while (ctx.type == \"statement\") ctx = popContext(state);\n if (ctx.type == \"}\") ctx = popContext(state);\n while (ctx.type == \"statement\") ctx = popContext(state);\n }\n else if (curPunc == ctx.type) popContext(state);\n else if (indentStatements && (((ctx.type == \"}\" || ctx.type == \"top\")\n && curPunc != ';') || (ctx.type == \"statement\"\n && curPunc == \"newstatement\")))\n pushContext(state, stream.column(), \"statement\");\n\n state.startOfLine = false;\n return style;\n },\n\n languageData: {\n indentOnInput: /^\\s*[{}]$/,\n commentTokens: {line: \"--\"}\n }\n };\n};\n"],"names":["words","str","obj","i","defaults","asn1","parserConfig","keywords","cmipVerbs","compareTypes","status","tags","storage","modifier","accessTypes","indentStatements","isOperatorChar","curPunc","tokenBase","stream","state","ch","tokenString","cur","quote","escaped","next","end","afterNext","Context","indented","column","type","align","prev","pushContext","col","indent","popContext","t","ctx","style"],"mappings":"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","x_google_ignoreList":[0]}