prism-ada.js 996 B

12345678910111213141516171819202122
  1. Prism.languages.ada = {
  2. 'comment': /--.*/,
  3. 'string': /"(?:""|[^"\r\f\n])*"/,
  4. 'number': [
  5. {
  6. pattern: /\b\d(?:_?\d)*#[\dA-F](?:_?[\dA-F])*(?:\.[\dA-F](?:_?[\dA-F])*)?#(?:E[+-]?\d(?:_?\d)*)?/i
  7. },
  8. {
  9. pattern: /\b\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:E[+-]?\d(?:_?\d)*)?\b/i
  10. }
  11. ],
  12. 'attribute': {
  13. pattern: /\b'\w+/,
  14. alias: 'attr-name'
  15. },
  16. 'keyword': /\b(?:abort|abs|abstract|accept|access|aliased|all|and|array|at|begin|body|case|constant|declare|delay|delta|digits|do|else|elsif|end|entry|exception|exit|for|function|generic|goto|if|in|interface|is|limited|loop|mod|new|not|null|of|or|others|out|overriding|package|pragma|private|procedure|protected|raise|range|record|rem|renames|requeue|return|reverse|select|separate|some|subtype|synchronized|tagged|task|terminate|then|type|until|use|when|while|with|xor)\b/i,
  17. 'boolean': /\b(?:false|true)\b/i,
  18. 'operator': /<[=>]?|>=?|=>?|:=|\/=?|\*\*?|[&+-]/,
  19. 'punctuation': /\.\.?|[,;():]/,
  20. 'char': /'.'/,
  21. 'variable': /\b[a-z](?:\w)*\b/i
  22. };