diff options
Diffstat (limited to 'libcutl/cutl/compiler/cxx-indenter.ixx')
-rw-r--r-- | libcutl/cutl/compiler/cxx-indenter.ixx | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/libcutl/cutl/compiler/cxx-indenter.ixx b/libcutl/cutl/compiler/cxx-indenter.ixx new file mode 100644 index 0000000..74bfac3 --- /dev/null +++ b/libcutl/cutl/compiler/cxx-indenter.ixx @@ -0,0 +1,69 @@ +// file : cutl/compiler/cxx-indenter.ixx +// copyright : Copyright (c) 2009-2013 Code Synthesis Tools CC +// license : MIT; see accompanying LICENSE file + +namespace cutl +{ + namespace compiler + { + template <typename C> + inline typename cxx_indenter<C>::char_class_type cxx_indenter<C>:: + char_class (C c) + { + switch (c) + { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + return cc_digit; + + case '!': + case '%': + case '^': + case '&': + case '*': + case '(': + case ')': + case '-': + case '+': + case '=': + case '{': + case '}': + case '|': + case '~': + case '[': + case ']': + case '\\': + case ';': + case '\'': + case ':': + case '"': + case '<': + case '>': + case '?': + case ',': + case '.': + case '/': + return cc_op_punc; + + case ' ': + case '\n': + case '\t': + case '\f': + case '\r': + case '\v': + return cc_space; + + default: + return cc_alpha; + } + } + } +} |