diff options
Diffstat (limited to 'node_modules/highlight.js/lib/languages/thrift.js')
-rw-r--r-- | node_modules/highlight.js/lib/languages/thrift.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/node_modules/highlight.js/lib/languages/thrift.js b/node_modules/highlight.js/lib/languages/thrift.js new file mode 100644 index 000000000..edf29e6ac --- /dev/null +++ b/node_modules/highlight.js/lib/languages/thrift.js @@ -0,0 +1,34 @@ +module.exports = function(hljs) { + var BUILT_IN_TYPES = 'bool byte i16 i32 i64 double string binary'; + return { + keywords: { + keyword: + 'namespace const typedef struct enum service exception void oneway set list map required optional', + built_in: + BUILT_IN_TYPES, + literal: + 'true false' + }, + contains: [ + hljs.QUOTE_STRING_MODE, + hljs.NUMBER_MODE, + hljs.C_LINE_COMMENT_MODE, + hljs.C_BLOCK_COMMENT_MODE, + { + className: 'class', + beginKeywords: 'struct enum service exception', end: /\{/, + illegal: /\n/, + contains: [ + hljs.inherit(hljs.TITLE_MODE, { + starts: {endsWithParent: true, excludeEnd: true} // hack: eating everything after the first title + }) + ] + }, + { + begin: '\\b(set|list|map)\\s*<', end: '>', + keywords: BUILT_IN_TYPES, + contains: ['self'] + } + ] + }; +};
\ No newline at end of file |