diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2014-11-16 19:31:29 +0100 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2014-11-16 23:34:25 +0100 |
commit | 38fcf6d15cdf09591e7d7a142ad724164875e433 (patch) | |
tree | bc6d81a5c3e33b6832cf0507fbf7e9e4a01a4358 /src/parser.cpp | |
parent | 7a0857515ad216325fc3021c7490df9d01a21c7c (diff) | |
download | sciteco-38fcf6d15cdf09591e7d7a142ad724164875e433.tar.gz |
rewritten View and Interface base classes using the Curiously Recurring Template Pattern.
* without the one-view-per-buffer designs, many Scintilla send message (SSM)
calls could be inlined
* with the new design, this was no longer possible using the abstract
base classes. the CRT pattern allows inlining again but introduces
a strange level of code obscurity.
* tests suggest that at high optimization levels, the one-view-per-buffer
design and the CRT pattern reduces typical macro runtimes by 30%
(e.g. for symbols-extract.tes).
* only updated the NCurses UI for the time being
Diffstat (limited to 'src/parser.cpp')
-rw-r--r-- | src/parser.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/parser.cpp b/src/parser.cpp index 61d43cc..a510ab5 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -1277,7 +1277,8 @@ StateStart::custom(gchar chr) */ case '=': BEGIN_EXEC(this); - interface.msg(Interface::MSG_USER, "%" TECO_INTEGER_FORMAT, + interface.msg(InterfaceCurrent::MSG_USER, + "%" TECO_INTEGER_FORMAT, expressions.pop_num_calc()); break; |