All files / src/analysis/lexer ASN1Keyword.ts

100% Statements 5/5
100% Branches 0/0
100% Functions 0/0
100% Lines 5/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 1111x   1x         1x                                                                                                                                                                                                 1x 80x          
import {createToken} from 'chevrotain';
 
const token = createToken({
  name: 'x',
  pattern: /x/,
});
 
export const k = {
  // 'ENCODING-CONTROL': token,
  // 'RELATIVE-OID-IRI': token,
  // 'ABSTRACT-SYNTAX': token,
  // 'TYPE-IDENTIFIER': token,
  // 'MINUS-INFINITY': token,
  // 'PLUS-INFINITY': token,
  // 'NOT-A-NUMBER': token,
  // 'RELATIVE-OID': token,
  // 'TIME-OF-DAY': token,
  // 'DATE-TIME': token,
  // 'OID-IRI': token,
  ObjectDescriptor: token,
  GeneralizedTime: token,
  PrintableString: token,
  UniversalString: token,
  VideotexString: token,
  EXTENSIBILITY: token,
  GeneralString: token,
  GraphicString: token,
  NumericString: token,
  TeletexString: token,
  VisibleString: token,
  INSTRUCTIONS: token,
  INTERSECTION: token,
  ISO646String: token,
  APPLICATION: token,
  CONSTRAINED: token,
  DEFINITIONS: token,
  COMPONENTS: token,
  CONTAINING: token,
  ENUMERATED: token,
  IDENTIFIER: token,
  UTF8String: token,
  AUTOMATIC: token,
  BMPString: token,
  CHARACTER: token,
  COMPONENT: token,
  IA5String: token,
  T61String: token,
  UNIVERSAL: token,
  DURATION: token,
  EMBEDDED: token,
  EXPLICIT: token,
  EXTERNAL: token,
  IMPLICIT: token,
  INCLUDES: token,
  INSTANCE: token,
  OPTIONAL: token,
  SEQUENCE: token,
  SETTINGS: token,
  BOOLEAN: token,
  DEFAULT: token,
  ENCODED: token,
  EXPORTS: token,
  IMPLIED: token,
  IMPORTS: token,
  INTEGER: token,
  PATTERN: token,
  PRESENT: token,
  PRIVATE: token,
  UTCTime: token,
  ABSENT: token,
  EXCEPT: token,
  OBJECT: token,
  CHOICE: token,
  STRING: token,
  SYNTAX: token,
  UNIQUE: token,
  CLASS: token,
  BEGIN: token,
  FALSE: token,
  OCTET: token,
  UNION: token,
  DATE: token,
  FROM: token,
  SIZE: token,
  REAL: token,
  TAGS: token,
  TIME: token,
  TRUE: token,
  WITH: token,
  ALL: token,
  END: token,
  MAX: token,
  SET: token,
  MIN: token,
  BIT: token,
  NULL: token,
  PDV: token,
  BY: token,
  OF: token,
};
 
export type KeywordObject = typeof k;
export type Keyword = keyof KeywordObject;
 
for (const name of Object.keys(k) as Keyword[]) {
  k[name] = createToken({
    name,
    pattern: new RegExp(name),
  });
}