28 lines
824 B
JavaScript
28 lines
824 B
JavaScript
(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(?:callback|resource|boolean|integer|double|object|string|array|false|float|mixed|bool|null|self|true|void|int)\b/,
|
|
'punctuation': /[|\\[\]()]/
|
|
}
|
|
}
|
|
],
|
|
});
|
|
|
|
Prism.languages.javadoclike.addSupport('php', Prism.languages.phpdoc);
|
|
|
|
}(Prism));
|