summaryrefslogtreecommitdiffstats
path: root/public/prism/prism-swift.min.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/prism/prism-swift.min.js')
-rw-r--r--public/prism/prism-swift.min.js96
1 files changed, 96 insertions, 0 deletions
diff --git a/public/prism/prism-swift.min.js b/public/prism/prism-swift.min.js
new file mode 100644
index 0000000..064cedf
--- /dev/null
+++ b/public/prism/prism-swift.min.js
@@ -0,0 +1,96 @@
+(Prism.languages.swift = {
+ comment: {
+ pattern:
+ /(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,
+ lookbehind: !0,
+ greedy: !0,
+ },
+ 'string-literal': [
+ {
+ pattern: RegExp(
+ '(^|[^"#])(?:"(?:\\\\(?:\\((?:[^()]|\\([^()]*\\))*\\)|\r\n|[^(])|[^\\\\\r\n"])*"|"""(?:\\\\(?:\\((?:[^()]|\\([^()]*\\))*\\)|[^(])|[^\\\\"]|"(?!""))*""")(?!["#])'
+ ),
+ lookbehind: !0,
+ greedy: !0,
+ inside: {
+ interpolation: {
+ pattern: /(\\\()(?:[^()]|\([^()]*\))*(?=\))/,
+ lookbehind: !0,
+ inside: null,
+ },
+ 'interpolation-punctuation': {
+ pattern: /^\)|\\\($/,
+ alias: 'punctuation',
+ },
+ punctuation: /\\(?=[\r\n])/,
+ string: /[\s\S]+/,
+ },
+ },
+ {
+ pattern: RegExp(
+ '(^|[^"#])(#+)(?:"(?:\\\\(?:#+\\((?:[^()]|\\([^()]*\\))*\\)|\r\n|[^#])|[^\\\\\r\n])*?"|"""(?:\\\\(?:#+\\((?:[^()]|\\([^()]*\\))*\\)|[^#])|[^\\\\])*?""")\\2'
+ ),
+ lookbehind: !0,
+ greedy: !0,
+ inside: {
+ interpolation: {
+ pattern: /(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,
+ lookbehind: !0,
+ inside: null,
+ },
+ 'interpolation-punctuation': {
+ pattern: /^\)|\\#+\($/,
+ alias: 'punctuation',
+ },
+ string: /[\s\S]+/,
+ },
+ },
+ ],
+ directive: {
+ pattern: RegExp(
+ '#(?:(?:elseif|if)\\b(?:[ \t]*(?:![ \t]*)?(?:\\b\\w+\\b(?:[ \t]*\\((?:[^()]|\\([^()]*\\))*\\))?|\\((?:[^()]|\\([^()]*\\))*\\))(?:[ \t]*(?:&&|\\|\\|))?)+|(?:else|endif)\\b)'
+ ),
+ alias: 'property',
+ inside: {
+ 'directive-name': /^#\w+/,
+ boolean: /\b(?:false|true)\b/,
+ number: /\b\d+(?:\.\d+)*\b/,
+ operator: /!|&&|\|\||[<>]=?/,
+ punctuation: /[(),]/,
+ },
+ },
+ literal: {
+ pattern:
+ /#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,
+ alias: 'constant',
+ },
+ 'other-directive': { pattern: /#\w+\b/, alias: 'property' },
+ attribute: { pattern: /@\w+/, alias: 'atrule' },
+ 'function-definition': {
+ pattern: /(\bfunc\s+)\w+/,
+ lookbehind: !0,
+ alias: 'function',
+ },
+ label: {
+ pattern:
+ /\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,
+ lookbehind: !0,
+ alias: 'important',
+ },
+ keyword:
+ /\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,
+ boolean: /\b(?:false|true)\b/,
+ nil: { pattern: /\bnil\b/, alias: 'constant' },
+ 'short-argument': /\$\d+\b/,
+ omit: { pattern: /\b_\b/, alias: 'keyword' },
+ number:
+ /\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,
+ 'class-name': /\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,
+ function: /\b[a-z_]\w*(?=\s*\()/i,
+ constant: /\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,
+ operator: /[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,
+ punctuation: /[{}[\]();,.:\\]/,
+}),
+ Prism.languages.swift['string-literal'].forEach(function (e) {
+ e.inside.interpolation.inside = Prism.languages.swift;
+ });