summaryrefslogtreecommitdiffstats
path: root/formal/promela/src/src/modules/comment_filter/comment_filter/language.py
diff options
context:
space:
mode:
Diffstat (limited to 'formal/promela/src/src/modules/comment_filter/comment_filter/language.py')
-rw-r--r--formal/promela/src/src/modules/comment_filter/comment_filter/language.py60
1 files changed, 60 insertions, 0 deletions
diff --git a/formal/promela/src/src/modules/comment_filter/comment_filter/language.py b/formal/promela/src/src/modules/comment_filter/comment_filter/language.py
new file mode 100644
index 00000000..a934810e
--- /dev/null
+++ b/formal/promela/src/src/modules/comment_filter/comment_filter/language.py
@@ -0,0 +1,60 @@
+class Lang:
+ def __init__(self, line_comment, comment_bookends, nested_comments):
+ self.line_comment = line_comment
+ self.comment_bookends = comment_bookends
+ self.nested_comments = nested_comments
+ self.string_literal_start = '"'
+ self.string_literal2_start = "'"
+
+c = Lang(
+ line_comment='//',
+ comment_bookends=[('/*', '*/'), (';;', ';;')],
+ nested_comments=False)
+
+haskell = Lang(
+ line_comment='--',
+ comment_bookends=[('{-', '-}')],
+ nested_comments=True)
+
+python = Lang(
+ line_comment='#',
+ comment_bookends=[('"""', '"""'), ("'''", "'''")],
+ nested_comments=False)
+
+ruby = Lang(
+ line_comment='#',
+ comment_bookends=[("=begin", "=end")],
+ nested_comments=False)
+
+lua = Lang(
+ line_comment='--',
+ comment_bookends=[("--[[", "--]]")],
+ nested_comments=False)
+
+perl = Lang(
+ line_comment='#',
+ comment_bookends=[("=pod", "=cut")],
+ nested_comments=False)
+
+java = Lang(
+ line_comment='//',
+ comment_bookends=[('/*', '*/')],
+ nested_comments=True)
+
+go = c
+
+extension_to_lang_map = {
+ '.c': c,
+ '.cc': c,
+ '.cxx': c,
+ '.cpp': c,
+ '.h': c,
+ '.S': c,
+ '.java': java,
+ '.go': go,
+ '.hs': haskell,
+ '.py': python,
+ '.rb': ruby,
+ '.lua': lua,
+ '.pl': perl,
+}