summaryrefslogtreecommitdiffstats
path: root/public/prism/prism-phpdoc.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/prism/prism-phpdoc.js')
-rw-r--r--public/prism/prism-phpdoc.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/public/prism/prism-phpdoc.js b/public/prism/prism-phpdoc.js
new file mode 100644
index 0000000..fd498f1
--- /dev/null
+++ b/public/prism/prism-phpdoc.js
@@ -0,0 +1,33 @@
+(function (Prism) {
+ var typeExpression = /(?:\b[a-zA-Z]\w*|[|\\[\]])+/.source;
+
+ Prism.languages.phpdoc = Prism.languages.extend('javadoclike', {
+ parameter: {
+ pattern: RegExp(
+ '(@(?:global|param|property(?:-read|-write)?|var)\\s+(?:' +
+ typeExpression +
+ '\\s+)?)\\$\\w+'
+ ),
+ lookbehind: true,
+ },
+ });
+
+ Prism.languages.insertBefore('phpdoc', 'keyword', {
+ 'class-name': [
+ {
+ pattern: RegExp(
+ '(@(?:global|package|param|property(?:-read|-write)?|return|subpackage|throws|var)\\s+)' +
+ typeExpression
+ ),
+ lookbehind: true,
+ inside: {
+ keyword:
+ /\b(?:array|bool|boolean|callback|double|false|float|int|integer|mixed|null|object|resource|self|string|true|void)\b/,
+ punctuation: /[|\\[\]()]/,
+ },
+ },
+ ],
+ });
+
+ Prism.languages.javadoclike.addSupport('php', Prism.languages.phpdoc);
+})(Prism);