Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>pull/3/head
parent
6eae1a16a1
commit
71fb4a1391
@ -1,3 +0,0 @@
|
||||
TODO list:
|
||||
|
||||
* Convert copyright file to machine-readable format.
|
@ -1,7 +0,0 @@
|
||||
[DEFAULT]
|
||||
compression = xz
|
||||
|
||||
[import-orig]
|
||||
upstream-branch = upstream-nondfsg
|
||||
pristine-tar = False
|
||||
merge = False
|
@ -1,30 +0,0 @@
|
||||
Backported commit 45681e88 from upstream git repository. This fixes FTBFS on ppcel and armxx archs.
|
||||
--- a/src/output.cpp
|
||||
+++ b/src/output.cpp
|
||||
@@ -544,11 +544,7 @@
|
||||
{
|
||||
for (auto *ch = pc->text(); *ch != '\0'; ++ch)
|
||||
{
|
||||
- if ( *ch > 0
|
||||
- || !chunk_is_token(pc, CT_COMMENT_MULTI))
|
||||
- {
|
||||
- fprintf(pfile, "%c", *ch);
|
||||
- }
|
||||
+ fprintf(pfile, "%c", *ch);
|
||||
|
||||
if (*ch == '"')
|
||||
{
|
||||
--- a/tests/cli/output/class_enum_struct_union.csv
|
||||
+++ b/tests/cli/output/class_enum_struct_union.csv
|
||||
@@ -1,9 +1,9 @@
|
||||
number of loops,4,
|
||||
language,CPP,
|
||||
Line,Tag,Parent_type,Type of the parent,Column,Orig Col Strt,Orig Col End,Orig Sp Before,Br,Lvl,pp,Flags,Nl Before,Nl After,Text,
|
||||
-1,COMMENT_MULTI,COMMENT_WHOLE,PARENT_NOT_SET,1,4,7,3,0,0,0,"",9,0," /** * the enum (and variable declarations thereof) could be of * the following forms: * * ""enum type [: integral_type] { ... } [x, ...]"" * ""enum type [: integral_type]"" * ""enum class type [: integral_type] { ... } [x, ...]"" * ""enum class type [: integral_type]"" * ""enum [: integral_type] { ... } x, ..."" */"
|
||||
+1,COMMENT_MULTI,COMMENT_WHOLE,PARENT_NOT_SET,1,4,7,3,0,0,0,"",9,0," /** * the enum (and variable declarations thereof) could be of * the following forms: * * ""enum type [: integral_type] { ... } [x, ...]"" * ""enum type [: integral_type]"" * ""enum class type [: integral_type] { ... } [x, ...]"" * ""enum class type [: integral_type]"" * ""enum [: integral_type] { ... } x, ..."" */"
|
||||
10,NEWLINE,NONE,PARENT_NOT_SET,7,7,4,0,0,0,0,"",2,0,
|
||||
-12,COMMENT_MULTI,COMMENT_WHOLE,PARENT_NOT_SET,1,4,7,0,0,0,0,"",9,0," /** * the class/struct (and variable declarations thereof) could be of * the following forms: * * template<...> class/struct[<...>] [macros/attributes ...] type [: bases ...] { } * template<...> class/struct[<...>] [macros/attributes ...] type * class/struct[ [macros/attributes ...] type [: bases ...] { } [x, ...] * class/struct [macros/attributes ...] type [x, ...] * class/struct [macros/attributes ...] [: bases] { } x, ... */"
|
||||
+12,COMMENT_MULTI,COMMENT_WHOLE,PARENT_NOT_SET,1,4,7,0,0,0,0,"",9,0," /** * the class/struct (and variable declarations thereof) could be of * the following forms: * * template<...> class/struct[<...>] [macros/attributes ...] type [: bases ...] { } * template<...> class/struct[<...>] [macros/attributes ...] type * class/struct[ [macros/attributes ...] type [: bases ...] { } [x, ...] * class/struct [macros/attributes ...] type [x, ...] * class/struct [macros/attributes ...] [: bases] { } x, ... */"
|
||||
21,NEWLINE,NONE,PARENT_NOT_SET,7,7,1,0,0,0,0,"",2,0,
|
||||
23,PREPROC,PP_DEFINE,PARENT_NOT_SET,1,1,2,0,1,1,0,"IN_PREPROC,STMT_START,EXPR_START,DONT_INDENT,PUNCTUATOR",0,0," #"
|
||||
23,PP_DEFINE,NONE,PARENT_NOT_SET,2,2,8,0,1,1,0,"IN_PREPROC,FORCE_SPACE",0,0," define"
|
@ -1,25 +0,0 @@
|
||||
Backported commit 64d93e3fb from upstream git repository.
|
||||
--- a/src/align_func_proto.cpp
|
||||
+++ b/src/align_func_proto.cpp
|
||||
@@ -47,8 +47,8 @@
|
||||
log_rule_B("align_var_def_amp_style");
|
||||
size_t myamp_style = options::align_var_def_amp_style();
|
||||
|
||||
- const size_t max_level_count = 8;
|
||||
- const size_t max_brace_level = 8;
|
||||
+ const size_t max_level_count = 16;
|
||||
+ const size_t max_brace_level = 16;
|
||||
|
||||
AlignStack many_as[max_level_count + 1][max_brace_level + 1];
|
||||
|
||||
--- a/src/logger.cpp
|
||||
+++ b/src/logger.cpp
|
||||
@@ -194,7 +194,7 @@
|
||||
return;
|
||||
}
|
||||
// the value of buffer_length is experimental
|
||||
- const int buffer_length = 4100;
|
||||
+ const int buffer_length = 40000;
|
||||
char buf[buffer_length];
|
||||
|
||||
// it MUST be a 'unsigned int' variable to be runable under windows
|
@ -1,183 +0,0 @@
|
||||
Backported commits 5f3f392a and fb66774e from upstream. This solves upstream issues 3040.
|
||||
|
||||
--- a/src/braces.cpp
|
||||
+++ b/src/braces.cpp
|
||||
@@ -1290,7 +1290,7 @@
|
||||
static chunk_t *mod_case_brace_add(chunk_t *cl_colon)
|
||||
{
|
||||
LOG_FUNC_ENTRY();
|
||||
- LOG_FMT(LMCB, "%s(%d): line %zu",
|
||||
+ LOG_FMT(LMCB, "%s(%d): line %zu\n",
|
||||
__func__, __LINE__, cl_colon->orig_line);
|
||||
|
||||
chunk_t *pc = cl_colon;
|
||||
@@ -1309,7 +1309,28 @@
|
||||
&& ( chunk_is_token(pc, CT_CASE)
|
||||
|| chunk_is_token(pc, CT_BREAK)))
|
||||
{
|
||||
- last = pc;
|
||||
+ // check if previous line is a preprocessor Issue #3040
|
||||
+ chunk_t *prev = chunk_get_prev_ncnl(pc);
|
||||
+ LOG_FMT(LMCB, "%s(%d): prev->text() is '%s', orig_line %zu\n",
|
||||
+ __func__, __LINE__, prev->text(), prev->orig_line);
|
||||
+
|
||||
+ if ( chunk_is_preproc(prev)
|
||||
+ && chunk_is_not_token(prev, CT_PP_ENDIF))
|
||||
+ {
|
||||
+ // previous line is a preprocessor, but NOT #endif
|
||||
+ while (chunk_is_preproc(prev))
|
||||
+ {
|
||||
+ prev = chunk_get_prev_ncnl(prev);
|
||||
+ }
|
||||
+ chunk_t *next_prev = chunk_get_next_ncnl(prev);
|
||||
+ LOG_FMT(LMCB, "%s(%d): next_prev->text() is '%s', orig_line %zu\n",
|
||||
+ __func__, __LINE__, next_prev->text(), next_prev->orig_line);
|
||||
+ last = next_prev;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ last = pc;
|
||||
+ }
|
||||
break;
|
||||
}
|
||||
}
|
||||
--- /dev/null
|
||||
+++ b/tests/config/Issue_3040.cfg
|
||||
@@ -0,0 +1,7 @@
|
||||
+indent_columns = 2
|
||||
+indent_switch_case = 2
|
||||
+nl_before_case = true
|
||||
+nl_after_case = true
|
||||
+eat_blanks_before_close_brace = true
|
||||
+mod_move_case_break = true
|
||||
+mod_case_brace = force
|
||||
--- a/tests/cpp.test
|
||||
+++ b/tests/cpp.test
|
||||
@@ -827,6 +827,7 @@
|
||||
34322 issue_2623_1.cfg cpp/issue_2623.cpp
|
||||
34323 issue_2623_2.cfg cpp/issue_2623.cpp
|
||||
34324 issue_2623_3.cfg cpp/issue_2623.cpp
|
||||
+34326 Issue_3040.cfg cpp/Issue_3040.cpp
|
||||
|
||||
# Adopt some UT tests
|
||||
10000 empty.cfg cpp/621_this-spacing.cpp
|
||||
--- /dev/null
|
||||
+++ b/tests/expected/cpp/34326-Issue_3040.cpp
|
||||
@@ -0,0 +1,62 @@
|
||||
+void main()
|
||||
+{
|
||||
+ switch (opcode ) {
|
||||
+
|
||||
+ case LocaleCompare:
|
||||
+ {
|
||||
+ return Number(localeCompare(s, a0.toString(exec)));
|
||||
+ }
|
||||
+
|
||||
+#ifndef KJS_PURE_ECMA
|
||||
+ case Big:
|
||||
+ {
|
||||
+ result = String("<big>" + s + "</big>");
|
||||
+ break;
|
||||
+ }
|
||||
+#endif
|
||||
+ }
|
||||
+
|
||||
+ switch (ev->command)
|
||||
+ {
|
||||
+ case (MIDI_NOTEON):
|
||||
+ {
|
||||
+ ev->note = *ptrdata; ptrdata++; currentpos++;
|
||||
+ ev->vel = *ptrdata; ptrdata++; currentpos++;
|
||||
+ if (ev->vel==0)
|
||||
+ note[ev->chn][ev->note]=FALSE;
|
||||
+ else
|
||||
+ note[ev->chn][ev->note]=TRUE;
|
||||
+
|
||||
+#ifdef TRACKDEBUG2
|
||||
+ if (ev->chn==6) {
|
||||
+ if (ev->vel==0) printfdebug("Note Onf\n");
|
||||
+ else printfdebug("Note On\n");
|
||||
+ };
|
||||
+#endif
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ case (MIDI_NOTEOFF):
|
||||
+ {
|
||||
+#ifdef TRACKDEBUG2
|
||||
+ if (ev->chn==6) printfdebug("Note Off\n");
|
||||
+#endif
|
||||
+ ev->note = *ptrdata; ptrdata++; currentpos++;
|
||||
+ ev->vel = *ptrdata; ptrdata++; currentpos++;
|
||||
+ note[ev->chn][ev->note]=FALSE;
|
||||
+
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ case (MIDI_KEY_PRESSURE):
|
||||
+ {
|
||||
+#ifdef TRACKDEBUG2
|
||||
+ if (ev->chn==6) printfdebug ("Key press\n");
|
||||
+#endif
|
||||
+ ev->note = *ptrdata; ptrdata++; currentpos++;
|
||||
+ ev->vel = *ptrdata; ptrdata++; currentpos++;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
--- /dev/null
|
||||
+++ b/tests/input/cpp/Issue_3040.cpp
|
||||
@@ -0,0 +1,52 @@
|
||||
+void main()
|
||||
+{
|
||||
+ switch (opcode ) {
|
||||
+
|
||||
+ case LocaleCompare:
|
||||
+ return Number(localeCompare(s, a0.toString(exec)));
|
||||
+
|
||||
+#ifndef KJS_PURE_ECMA
|
||||
+ case Big:
|
||||
+ result = String("<big>" + s + "</big>");
|
||||
+ break;
|
||||
+#endif
|
||||
+
|
||||
+ }
|
||||
+
|
||||
+ switch (ev->command)
|
||||
+ {
|
||||
+ case (MIDI_NOTEON):
|
||||
+ ev->note = *ptrdata; ptrdata++; currentpos++;
|
||||
+ ev->vel = *ptrdata; ptrdata++; currentpos++;
|
||||
+ if (ev->vel==0)
|
||||
+ note[ev->chn][ev->note]=FALSE;
|
||||
+ else
|
||||
+ note[ev->chn][ev->note]=TRUE;
|
||||
+
|
||||
+#ifdef TRACKDEBUG2
|
||||
+ if (ev->chn==6) {
|
||||
+ if (ev->vel==0) printfdebug("Note Onf\n");
|
||||
+ else printfdebug("Note On\n");
|
||||
+ };
|
||||
+#endif
|
||||
+ break;
|
||||
+ case (MIDI_NOTEOFF) :
|
||||
+#ifdef TRACKDEBUG2
|
||||
+ if (ev->chn==6) printfdebug("Note Off\n");
|
||||
+#endif
|
||||
+ ev->note = *ptrdata;ptrdata++;currentpos++;
|
||||
+ ev->vel = *ptrdata;ptrdata++;currentpos++;
|
||||
+ note[ev->chn][ev->note]=FALSE;
|
||||
+
|
||||
+ break;
|
||||
+ case (MIDI_KEY_PRESSURE) :
|
||||
+#ifdef TRACKDEBUG2
|
||||
+ if (ev->chn==6) printfdebug ("Key press\n");
|
||||
+#endif
|
||||
+ ev->note = *ptrdata;ptrdata++;currentpos++;
|
||||
+ ev->vel = *ptrdata;ptrdata++;currentpos++;
|
||||
+ break;
|
||||
+
|
||||
+ }
|
||||
+}
|
||||
+
|
@ -1,21 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
# Uncomment this to turn on verbose mode.
|
||||
#export DH_VERBOSE=1
|
||||
|
||||
ifneq "$(wildcard /usr/bin/ninja)" ""
|
||||
MAKE = ninja -v
|
||||
DEB_MAKE_ENVVARS += DESTDIR=$(DEB_DESTDIR)
|
||||
DEB_MAKE_INSTALL_TARGET = install
|
||||
DEB_CMAKE_NORMAL_ARGS += -GNinja
|
||||
endif
|
||||
|
||||
%:
|
||||
dh $@
|
||||
|
||||
override_dh_auto_configure:
|
||||
dh_auto_configure $@ -- $(DEB_CMAKE_NORMAL_ARGS) -DUNCRUSTIFY_SEPARATE_TESTS=ON
|
||||
|
||||
override_dh_clean:
|
||||
dh_clean
|
||||
rm -rf tests/results
|
@ -1,5 +0,0 @@
|
||||
version=4
|
||||
opts=dversionmangle=s/\+dfsg\d*$// \
|
||||
https://github.com/uncrustify/uncrustify/releases \
|
||||
(?:.*?/)?uncrustify-(\d[\d.]*)\.tar\.gz debian uupdate
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,182 +0,0 @@
|
||||
/**
|
||||
* @file align_func_proto.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* split from align.cpp
|
||||
* @author Ben Gardner
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#include "align_func_proto.h"
|
||||
|
||||
#include "align_stack.h"
|
||||
#include "align_tools.h"
|
||||
#include "log_rules.h"
|
||||
#include "uncrustify_limits.h"
|
||||
|
||||
#include <algorithm> // to get max
|
||||
|
||||
using namespace uncrustify;
|
||||
|
||||
|
||||
void align_func_proto(size_t span)
|
||||
{
|
||||
LOG_FUNC_ENTRY();
|
||||
|
||||
size_t myspan = span;
|
||||
size_t mythresh = 0;
|
||||
|
||||
log_rule_B("align_func_proto_gap");
|
||||
size_t mygap = options::align_func_proto_gap();
|
||||
|
||||
log_rule_B("align_func_proto_thresh");
|
||||
mythresh = options::align_func_proto_thresh();
|
||||
|
||||
// Issue #2771
|
||||
// we align token-1 and token-2 if:
|
||||
// token-1->level == token-2->level
|
||||
// and
|
||||
// token-1->brace_level == token-2->brace_level
|
||||
// we don't check if token-1 and token-2 are in the same block
|
||||
size_t max_level_is = 0;
|
||||
size_t max_brace_level_is = 0;
|
||||
|
||||
log_rule_B("align_var_def_star_style");
|
||||
size_t mystar_style = options::align_var_def_star_style();
|
||||
|
||||
log_rule_B("align_var_def_amp_style");
|
||||
size_t myamp_style = options::align_var_def_amp_style();
|
||||
|
||||
const size_t max_level_count = 8;
|
||||
const size_t max_brace_level = 8;
|
||||
|
||||
AlignStack many_as[max_level_count + 1][max_brace_level + 1];
|
||||
|
||||
// Issue #2771
|
||||
AlignStack many_as_brace[max_level_count + 1][max_brace_level + 1];
|
||||
|
||||
log_rule_B("align_single_line_brace_gap");
|
||||
size_t mybr_gap = options::align_single_line_brace_gap();
|
||||
|
||||
for (size_t idx = 0; idx <= max_level_count; idx++)
|
||||
{
|
||||
for (size_t idx_brace = 0; idx_brace <= max_brace_level; idx_brace++)
|
||||
{
|
||||
many_as[idx][idx_brace].Start(myspan, mythresh);
|
||||
many_as[idx][idx_brace].m_gap = mygap;
|
||||
many_as[idx][idx_brace].m_star_style = static_cast<AlignStack::StarStyle>(mystar_style);
|
||||
many_as[idx][idx_brace].m_amp_style = static_cast<AlignStack::StarStyle>(myamp_style);
|
||||
|
||||
many_as_brace[idx][idx_brace].Start(myspan, 0);
|
||||
many_as_brace[idx][idx_brace].m_gap = mybr_gap;
|
||||
}
|
||||
}
|
||||
|
||||
bool look_bro = false;
|
||||
chunk_t *toadd;
|
||||
|
||||
for (chunk_t *pc = chunk_get_head(); pc != nullptr; pc = chunk_get_next(pc))
|
||||
{
|
||||
LOG_FMT(LAS, "%s(%d): orig_line is %zu, orig_col is %zu, text() is '%s', type is %s, level is %zu, brace_level is %zu\n",
|
||||
__func__, __LINE__, pc->orig_line, pc->orig_col, pc->text(),
|
||||
get_token_name(pc->type), pc->level, pc->brace_level);
|
||||
|
||||
if (pc->level > max_level_count) // Issue #2960
|
||||
{
|
||||
fprintf(stderr, "%s(%d): pc->level is %zu. This is too big, at line %zu, column %zu. Make a report, please.\n",
|
||||
__func__, __LINE__, pc->level, pc->orig_line, pc->orig_col);
|
||||
log_flush(true);
|
||||
exit(EX_SOFTWARE);
|
||||
}
|
||||
|
||||
if (pc->brace_level > max_brace_level)
|
||||
{
|
||||
fprintf(stderr, "%s(%d): pc->brace_level is %zu. This is too big, at line %zu, column %zu. Make a report, please.\n",
|
||||
__func__, __LINE__, pc->level, pc->orig_line, pc->orig_col);
|
||||
log_flush(true);
|
||||
exit(EX_SOFTWARE);
|
||||
}
|
||||
|
||||
if ( chunk_is_newline(pc)
|
||||
&& !pc->flags.test(PCF_IN_FCN_CALL)) // Issue #2831
|
||||
{
|
||||
look_bro = false;
|
||||
many_as[pc->level][pc->brace_level].Debug();
|
||||
many_as_brace[pc->level][pc->brace_level].Debug();
|
||||
|
||||
for (size_t idx = 0; idx <= max_level_count; idx++)
|
||||
{
|
||||
for (size_t idx_brace = 0; idx_brace <= max_brace_level; idx_brace++)
|
||||
{
|
||||
many_as[idx][idx_brace].NewLines(pc->nl_count);
|
||||
}
|
||||
}
|
||||
|
||||
many_as_brace[pc->level][pc->brace_level].NewLines(pc->nl_count);
|
||||
}
|
||||
else if ( chunk_is_token(pc, CT_FUNC_PROTO)
|
||||
|| ( chunk_is_token(pc, CT_FUNC_DEF)
|
||||
&& options::align_single_line_func()))
|
||||
{
|
||||
log_rule_B("align_single_line_func");
|
||||
log_rule_B("align_on_operator");
|
||||
|
||||
if ( get_chunk_parent_type(pc) == CT_OPERATOR
|
||||
&& options::align_on_operator())
|
||||
{
|
||||
toadd = chunk_get_prev_ncnl(pc);
|
||||
}
|
||||
else
|
||||
{
|
||||
toadd = pc;
|
||||
}
|
||||
|
||||
if (pc->level > max_level_count)
|
||||
{
|
||||
fprintf(stderr, "%s(%d): Not enought memory for Stack\n",
|
||||
__func__, __LINE__);
|
||||
fprintf(stderr, "%s(%d): the current maximum for level is %zu\n",
|
||||
__func__, __LINE__, max_level_count);
|
||||
log_flush(true);
|
||||
}
|
||||
|
||||
if (pc->level > max_brace_level)
|
||||
{
|
||||
fprintf(stderr, "%s(%d): Not enought memory for Stack\n",
|
||||
__func__, __LINE__);
|
||||
fprintf(stderr, "%s(%d): the current maximum for brace_level is %zu\n",
|
||||
__func__, __LINE__, max_brace_level);
|
||||
log_flush(true);
|
||||
exit(EX_SOFTWARE);
|
||||
}
|
||||
chunk_t *tmp = step_back_over_member(toadd);
|
||||
LOG_FMT(LAS, "%s(%d): tmp->text() is '%s', orig_line is %zu, orig_col is %zu, level is %zu, brace_level is %zu\n",
|
||||
__func__, __LINE__, tmp->text(), tmp->orig_line, tmp->orig_col,
|
||||
tmp->level, tmp->brace_level);
|
||||
max_level_is = max(max_level_is, pc->level);
|
||||
max_brace_level_is = max(max_brace_level_is, pc->level);
|
||||
many_as[pc->level][pc->brace_level].Add(tmp);
|
||||
log_rule_B("align_single_line_brace");
|
||||
look_bro = (chunk_is_token(pc, CT_FUNC_DEF))
|
||||
&& options::align_single_line_brace();
|
||||
}
|
||||
else if ( look_bro
|
||||
&& chunk_is_token(pc, CT_BRACE_OPEN)
|
||||
&& pc->flags.test(PCF_ONE_LINER))
|
||||
{
|
||||
many_as_brace[pc->level][pc->brace_level].Add(pc);
|
||||
look_bro = false;
|
||||
}
|
||||
}
|
||||
|
||||
LOG_FMT(LAS, "%s(%d): as\n", __func__, __LINE__);
|
||||
|
||||
for (size_t idx = 0; idx <= max_level_count; idx++)
|
||||
{
|
||||
for (size_t idx_brace = 0; idx_brace <= max_brace_level; idx_brace++)
|
||||
{
|
||||
many_as[idx][idx_brace].End();
|
||||
many_as_brace[idx][idx_brace].End();
|
||||
}
|
||||
}
|
||||
} // align_func_proto
|
@ -1,169 +0,0 @@
|
||||
/**
|
||||
* @file combine_skip.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
* extract from combine.cpp
|
||||
*/
|
||||
|
||||
#include "combine_skip.h"
|
||||
|
||||
|
||||
chunk_t *skip_align(chunk_t *start)
|
||||
{
|
||||
chunk_t *pc = start;
|
||||
|
||||
if (chunk_is_token(pc, CT_ALIGN))
|
||||
{
|
||||
pc = chunk_get_next_ncnl(pc);
|
||||
|
||||
if (chunk_is_token(pc, CT_PAREN_OPEN))
|
||||
{
|
||||
pc = chunk_get_next_type(pc, CT_PAREN_CLOSE, pc->level);
|
||||
pc = chunk_get_next_ncnl(pc);
|
||||
|
||||
if (chunk_is_token(pc, CT_COLON))
|
||||
{
|
||||
pc = chunk_get_next_ncnl(pc);
|
||||
}
|
||||
}
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_expression(chunk_t *start)
|
||||
{
|
||||
chunk_t *pc = start;
|
||||
|
||||
while (pc != nullptr && pc->level >= start->level)
|
||||
{
|
||||
if ( pc->level == start->level
|
||||
&& (chunk_is_semicolon(pc) || chunk_is_token(pc, CT_COMMA)))
|
||||
{
|
||||
return(pc);
|
||||
}
|
||||
pc = chunk_get_next_ncnl(pc);
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_to_next_statement(chunk_t *pc)
|
||||
{
|
||||
while ( pc != nullptr
|
||||
&& !chunk_is_semicolon(pc)
|
||||
&& chunk_is_not_token(pc, CT_BRACE_OPEN)
|
||||
&& chunk_is_not_token(pc, CT_BRACE_CLOSE))
|
||||
{
|
||||
pc = chunk_get_next_ncnl(pc);
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_parent_types(chunk_t *colon)
|
||||
{
|
||||
auto pc = chunk_get_next_ncnlnp(colon);
|
||||
|
||||
while (pc)
|
||||
{
|
||||
// Skip access specifier
|
||||
if (chunk_is_token(pc, CT_ACCESS))
|
||||
{
|
||||
pc = chunk_get_next_ncnlnp(pc);
|
||||
continue;
|
||||
}
|
||||
|
||||
// Check for a type name
|
||||
if (!(chunk_is_token(pc, CT_WORD) || chunk_is_token(pc, CT_TYPE)))
|
||||
{
|
||||
LOG_FMT(LPCU,
|
||||
"%s is confused; expected a word at %zu:%zu "
|
||||
"following type list at %zu:%zu\n", __func__,
|
||||
colon->orig_line, colon->orig_col,
|
||||
pc->orig_line, pc->orig_col);
|
||||
return(colon);
|
||||
}
|
||||
// Get next token
|
||||
auto next = skip_template_next(chunk_get_next_ncnlnp(pc));
|
||||
|
||||
if (chunk_is_token(next, CT_DC_MEMBER) || chunk_is_token(next, CT_COMMA))
|
||||
{
|
||||
pc = chunk_get_next_ncnlnp(next);
|
||||
}
|
||||
else if (next)
|
||||
{
|
||||
LOG_FMT(LPCU, "%s -> %zu:%zu ('%s')\n", __func__,
|
||||
next->orig_line, next->orig_col, next->text());
|
||||
return(next);
|
||||
}
|
||||
else
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
LOG_FMT(LPCU, "%s: did not find end of type list (start was %zu:%zu)\n",
|
||||
__func__, colon->orig_line, colon->orig_col);
|
||||
return(colon);
|
||||
} // skip_parent_types
|
||||
|
||||
|
||||
chunk_t *skip_template_prev(chunk_t *ang_close)
|
||||
{
|
||||
if (chunk_is_token(ang_close, CT_ANGLE_CLOSE))
|
||||
{
|
||||
chunk_t *pc = chunk_get_prev_type(ang_close, CT_ANGLE_OPEN, ang_close->level);
|
||||
return(chunk_get_prev_ncnlni(pc)); // Issue #2279
|
||||
}
|
||||
return(ang_close);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_tsquare_next(chunk_t *ary_def)
|
||||
{
|
||||
if (chunk_is_token(ary_def, CT_SQUARE_OPEN) || chunk_is_token(ary_def, CT_TSQUARE))
|
||||
{
|
||||
return(chunk_get_next_nisq(ary_def));
|
||||
}
|
||||
return(ary_def);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_attribute_next(chunk_t *attr)
|
||||
{
|
||||
chunk_t *pc = attr;
|
||||
|
||||
while (chunk_is_token(pc, CT_ATTRIBUTE))
|
||||
{
|
||||
pc = chunk_get_next_ncnl(pc);
|
||||
|
||||
if (chunk_is_token(pc, CT_FPAREN_OPEN))
|
||||
{
|
||||
pc = chunk_get_next_type(pc, CT_FPAREN_CLOSE, pc->level);
|
||||
pc = chunk_get_next_ncnl(pc);
|
||||
}
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_attribute_prev(chunk_t *fp_close)
|
||||
{
|
||||
chunk_t *pc = fp_close;
|
||||
|
||||
while (true)
|
||||
{
|
||||
if ( chunk_is_token(pc, CT_FPAREN_CLOSE)
|
||||
&& get_chunk_parent_type(pc) == CT_ATTRIBUTE)
|
||||
{
|
||||
pc = chunk_get_prev_type(pc, CT_ATTRIBUTE, pc->level);
|
||||
}
|
||||
else if (chunk_is_not_token(pc, CT_ATTRIBUTE))
|
||||
{
|
||||
break;
|
||||
}
|
||||
pc = chunk_get_prev_ncnlni(pc); // Issue #2279
|
||||
}
|
||||
return(pc);
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
/**
|
||||
* @file combine_skip.h
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
* extract from combine.cpp
|
||||
*/
|
||||
|
||||
#ifndef COMBINE_SKIP_H_INCLUDED
|
||||
#define COMBINE_SKIP_H_INCLUDED
|
||||
|
||||
#include "chunk_list.h"
|
||||
|
||||
|
||||
/**
|
||||
* Skips the D 'align()' statement and the colon, if present.
|
||||
* align(2) int foo; -- returns 'int'
|
||||
* align(4): -- returns 'int'
|
||||
* int bar;
|
||||
*/
|
||||
chunk_t *skip_align(chunk_t *start);
|
||||
|
||||
|
||||
/**
|
||||
* Skips everything until a comma or semicolon at the same level.
|
||||
* Returns the semicolon, comma, or close brace/paren or nullptr.
|
||||
*/
|
||||
chunk_t *skip_expression(chunk_t *start);
|
||||
|
||||
|
||||
/**
|
||||
* Skips the list of class/struct parent types.
|
||||
*/
|
||||
chunk_t *skip_parent_types(chunk_t *colon);
|
||||
|
||||
|
||||
/**
|
||||
* Skips over the rest of the template if ang_open is indeed a CT_ANGLE_OPEN.
|
||||
* Points to the chunk after the CT_ANGLE_CLOSE.
|
||||
* If the chunk isn't an CT_ANGLE_OPEN, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_template_next(chunk_t *ang_open);
|
||||
|
||||
|
||||
/**
|
||||
* Skips over the rest of the template if ang_close is indeed a CT_ANGLE_CLOSE.
|
||||
* Points to the chunk before the CT_ANGLE_OPEN
|
||||
* If the chunk isn't an CT_ANGLE_CLOSE, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_template_prev(chunk_t *ang_close);
|
||||
|
||||
|
||||
//! Skips to the start of the next statement.
|
||||
chunk_t *skip_to_next_statement(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Skips the rest of the array definitions if ary_def is indeed a
|
||||
* CT_TSQUARE or CT_SQUARE_OPEN
|
||||
*/
|
||||
chunk_t *skip_tsquare_next(chunk_t *ary_def);
|
||||
|
||||
|
||||
/**
|
||||
* If attr is CT_ATTRIBUTE, then skip it and the parens and return the chunk
|
||||
* after the CT_FPAREN_CLOSE.
|
||||
* If the chunk isn't an CT_ATTRIBUTE, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_attribute_next(chunk_t *attr);
|
||||
|
||||
|
||||
/**
|
||||
* If fp_close is a CT_FPAREN_CLOSE with a parent of CT_ATTRIBUTE, then skip it
|
||||
* and the '__attribute__' thingy and return the chunk before CT_ATTRIBUTE.
|
||||
* Otherwise return fp_close.
|
||||
*/
|
||||
chunk_t *skip_attribute_prev(chunk_t *fp_close);
|
||||
|
||||
|
||||
#endif /* COMBINE_SKIP_H_INCLUDED */
|
@ -1,131 +0,0 @@
|
||||
/**
|
||||
* @file log_levels.h
|
||||
*
|
||||
* Enum for log levels.
|
||||
* Use these for the log severities in LOG_FMT(), etc.
|
||||
*
|
||||
* @author Ben Gardner
|
||||
* @author Guy Maurel since version 0.62 for uncrustify4Qt
|
||||
* October 2015, 2016
|
||||
* @license GPL v2+
|
||||
*/
|
||||
#ifndef LOG_LEVELS_H_INCLUDED
|
||||
#define LOG_LEVELS_H_INCLUDED
|
||||
|
||||
/**
|
||||
* list of available log levels
|
||||
*
|
||||
* The user defines which log level is active using the
|
||||
* -L or -log option.
|
||||
* use -L A to set all the levels
|
||||
* All messages which have a level that is active will be stored to the log
|
||||
* file.
|
||||
* All other log messages will be discarded.
|
||||
* Different parts of the software use different log levels.
|
||||
* This allows to log only operations of a specific operation.
|
||||
* This eases debugging.
|
||||
* To get all log messages use the option -La
|
||||
* By default only system messages (level=LSYS) are logged.
|
||||
*/
|
||||
enum log_sev_t
|
||||
{
|
||||
LSYS = 0, //! system messages
|
||||
LERR = 1, //! error messages
|
||||
LWARN = 2, //! warnings
|
||||
LNOTE = 3, //! user notifications
|
||||
LINFO = 4, //! user informations
|
||||
LDATA = 5, //! data logging
|
||||
|
||||
LFILELIST = 8, //! Files in the file list file
|
||||
LLINEENDS = 9, //! Show which line endings are used
|
||||
LCASTS = 10, //! align casts
|
||||
LALBR = 11, //! align braces
|
||||
LALTD = 12, //! Align Typedef
|
||||
LALPP = 13, //! align #define
|
||||
LALPROTO = 14, //! align prototype
|
||||
LALNLC = 15, //! align backslash-newline
|
||||
LALTC = 16, //! align trailing comments
|
||||
LALADD = 17, //! align add
|
||||
LALASS = 18, //! align assign
|
||||
LFVD = 19, //! fix_var_def
|
||||
LFVD2 = 20, //! fix_var_def-2
|
||||
LINDENT = 21, //! indent_text
|
||||
LINDENT2 = 22, //! indent_text tab level
|
||||
LINDPSE = 23, //! indent_text stack
|
||||
LINDPC = 24, //! indent play-by-play
|
||||
LNEWLINE = 25, //! newlines
|
||||
LPF = 26, //! Parse Frame
|
||||
LSTMT = 27, //! Marking statements/expressions
|
||||
LTOK = 28, //! Tokenize
|
||||
LALRC = 29, //! align right comment
|
||||
LCMTIND = 30, //! Comment Indent
|
||||
LINDLINE = 31, //! indent line
|
||||
LSIB = 32, //! Scan IB
|
||||
LRETURN = 33, //! add/remove parens for return
|
||||
LBRDEL = 34, //! brace removal
|
||||
LFCN = 35, //! function detection
|
||||
LFCNP = 36, //! function parameters
|
||||
LPCU = 37, //! parse cleanup
|
||||
LDYNKW = 38, //! dynamic keywords
|
||||
LOUTIND = 39, //! output indent
|
||||
LBCSAFTER = 40, //! Brace cleanup stack - after each token
|
||||
LBCSPOP = 41, //! Brace cleanup stack - log pops
|
||||
LBCSPUSH = 42, //! Brace cleanup stack - log push
|
||||
LBCSSWAP = 43, //! Brace cleanup stack - log swaps
|
||||
LFTOR = 44, //! Class Ctor or Dtor
|
||||
LAS = 45, //! align_stack
|
||||
LPPIS = 46, //! Preprocessor Indent and Space
|
||||
LTYPEDEF = 47, //! Typedef and function types
|
||||
LVARDEF = 48, //! Variable def marking
|
||||
LDEFVAL = 49, //! define values
|
||||
LPVSEMI = 50, //! Pawn: virtual semicolons
|
||||
LPFUNC = 51, //! Pawn: function recognition
|
||||
LSPLIT = 52, //! Line splitting
|
||||
LFTYPE = 53, //! Function type detection
|
||||
LTEMPL = 54, //! Template detection
|
||||
LPARADD = 55, //! adding parens in if/while
|
||||
LPARADD2 = 56, //! adding parens in if/while - details
|
||||
LBLANKD = 57, //! blank line details
|
||||
LTEMPFUNC = 58, //! Template function detection
|
||||
LSCANSEMI = 59, //! scan semicolon removal
|
||||
LDELSEMI = 60, //! Removing semicolons
|
||||
LFPARAM = 61, //! Testing for a full parameter
|
||||
LNL1LINE = 62, //! NL check for 1 liners
|
||||
LPFCHK = 63, //! Parse Frame check function call
|
||||
LAVDB = 64, //! align var def braces
|
||||
LSORT = 65, //! Sorting
|
||||
LSPACE = 66, //! Space
|
||||
LALIGN = 67, //! align
|
||||
LALAGAIN = 68, //! align again
|
||||
LOPERATOR = 69, //! operator
|
||||
LASFCP = 70, //! Align Same Function Call Params
|
||||
LINDLINED = 71, //! indent line details
|
||||
LBCTRL = 72, //! beautifier control
|
||||
LRMRETURN = 73, //! remove 'return;'
|
||||
LPPIF = 74, //! #if/#else/#endif pair processing
|
||||
LMCB = 75, //! mod_case_brace
|
||||
LBRCH = 76, //! if brace chain
|
||||
LFCNR = 77, //! function return type
|
||||
LOCCLASS = 78, //! OC Class stuff
|
||||
LOCMSG = 79, //! OC Message stuff
|
||||
LBLANK = 80, //! Blank Lines
|
||||
LOBJCWORD = 81, //! Convert keyword to CT_WORD in certain circumstances
|
||||
LCHANGE = 82, //! something changed
|
||||
LCONTTEXT = 83, //! comment cont_text set
|
||||
LANNOT = 84, //! Java annotation
|
||||
LOCBLK = 85, //! OC Block stuff
|
||||
LFLPAREN = 86, //! Flag paren
|
||||
LOCMSGD = 87, //! OC Message declaration
|
||||
LINDENTAG = 88, //! indent again
|
||||
LNFD = 89, //! newline-function-def
|
||||
LJDBI = 90, //! Java Double Brace Init
|
||||
LSETPAR = 91, //! set_chunk_parent()
|
||||
LSETTYP = 92, //! set_chunk_type()
|
||||
LSETFLG = 93, //! set_chunk_flags()
|
||||
LNLFUNCT = 94, //! newlines before function
|
||||
LCHUNK = 95, //! Add or delete chunk
|
||||
LGUY98 = 98, //! for guy-test
|
||||
LGUY = 99, //! for guy-test
|
||||
};
|
||||
|
||||
#endif /* LOG_LEVELS_H_INCLUDED */
|
@ -1,62 +0,0 @@
|
||||
/**
|
||||
* @file log_rules.cpp
|
||||
* is an extract from space.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#include "log_rules.h"
|
||||
#include <string.h>
|
||||
|
||||
|
||||
void log_rule2(const char *func, size_t line, const char *rule, chunk_t *first, chunk_t *second)
|
||||
{
|
||||
LOG_FUNC_ENTRY();
|
||||
|
||||
if (second->type != CT_NEWLINE)
|
||||
{
|
||||
LOG_FMT(LSPACE, "%s(%zu): first->orig_line is %zu, first->orig_col is %zu, first->text() is '%s', [%s/%s] <===>\n",
|
||||
func, line, first->orig_line, first->orig_col, first->text(),
|
||||
get_token_name(first->type), get_token_name(get_chunk_parent_type(first)));
|
||||
LOG_FMT(LSPACE, " second->orig_line is %zu, second->orig_col is %zu, second->text() '%s', [%s/%s] : rule %s[line %zu]\n",
|
||||
second->orig_line, second->orig_col, second->text(),
|
||||
get_token_name(second->type), get_token_name(get_chunk_parent_type(second)),
|
||||
rule, line);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void log_rule3(const char *func, const char *rule)
|
||||
{
|
||||
const char *where = nullptr;
|
||||
|
||||
#ifdef WIN32
|
||||
// some Windows provide "ABC::XYZ::function_Name" as __func__
|
||||
// we look for the last ':' character
|
||||
// a function rindex cannot be found
|
||||
size_t length_of_string = strlen(func);
|
||||
|
||||
for (int which = length_of_string - 1; which > 0; which--)
|
||||
{
|
||||
char oneChar = func[which];
|
||||
|
||||
if (oneChar == ':')
|
||||
{
|
||||
where = func + which;
|
||||
break;
|
||||
}
|
||||
}
|
||||
#else // not WIN32
|
||||
where = rindex(func, ':');
|
||||
#endif /* ifdef WIN32 */
|
||||
|
||||
if (where == nullptr)
|
||||
{
|
||||
LOG_FMT(LSPACE, "log_rule(%s): rule is '%s'\n", func, rule);
|
||||
}
|
||||
else
|
||||
{
|
||||
LOG_FMT(LSPACE, "log_rule(%s): rule is '%s'\n", where + 1, rule);
|
||||
}
|
||||
}
|
@ -1,36 +0,0 @@
|
||||
/**
|
||||
* @file log_rules.h
|
||||
* prototypes for log_rules.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef LOG_RULES_H_INCLUDED
|
||||
#define LOG_RULES_H_INCLUDED
|
||||
|
||||
#include "chunk_list.h"
|
||||
#include "uncrustify.h"
|
||||
#include "uncrustify_types.h"
|
||||
|
||||
using namespace uncrustify;
|
||||
|
||||
|
||||
#define log_rule(rule) \
|
||||
do { if (log_sev_on(LSPACE)) { \
|
||||
log_rule2(__func__, __LINE__, (rule), first, second); } \
|
||||
} while (0)
|
||||
|
||||
|
||||
#define log_rule_B(rule) \
|
||||
do { if (log_sev_on(LSPACE)) { \
|
||||
log_rule3(__func__, (rule)); } \
|
||||
} while (0)
|
||||
|
||||
|
||||
void log_rule2(const char *func, size_t line, const char *rule, chunk_t *first, chunk_t *second);
|
||||
|
||||
|
||||
void log_rule3(const char *func, const char *rule);
|
||||
|
||||
#endif /* LOG_RULES_H_INCLUDED */
|
@ -1,31 +0,0 @@
|
||||
/**
|
||||
* @file tokenize.h
|
||||
* prototypes for tokenize.c
|
||||
*
|
||||
* @author Ben Gardner
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef TOKENIZE_H_INCLUDED
|
||||
#define TOKENIZE_H_INCLUDED
|
||||
|
||||
#include "uncrustify_types.h"
|
||||
|
||||
|
||||
/**
|
||||
* @brief Parse the text into chunks
|
||||
*
|
||||
* This function parses or tokenizes the whole buffer into a list.
|
||||
* It has to do some tricks to parse preprocessors.
|
||||
*
|
||||
* If output_text() were called immediately after, two things would happen:
|
||||
* - trailing whitespace are removed.
|
||||
* - leading space & tabs are converted to the appropriate format.
|
||||
*
|
||||
* All the tokens are inserted before ref. If ref is NULL, they are inserted
|
||||
* at the end of the list. Line numbers are relative to the start of the data.
|
||||
*/
|
||||
void tokenize(const std::deque<int> &data, chunk_t *ref);
|
||||
|
||||
|
||||
#endif /* TOKENIZE_H_INCLUDED */
|
@ -1,52 +0,0 @@
|
||||
indent_text : pc->line is 1, pc->column is 1, pc->text() is 'struct, indent_column is 1
|
||||
indent_text : orig_line is 1, indent set to 1, for 'struct'
|
||||
indent_text : pc->line is 2, pc->column is 1, pc->text() is '{, indent_column is 1
|
||||
indent_text : orig_line is 2, indent set to 1, for '{'
|
||||
indent_text : pc->line is 3, pc->column is 1, pc->text() is 'TelegramIndex, indent_column is 9
|
||||
indent_text : orig_line is 3, indent set to 9, for 'TelegramIndex'
|
||||
indent_text : pc->line is 4, pc->column is 1, pc->text() is 'pTelName, indent_column is 17
|
||||
indent_text : orig_line is 4, indent set to 17, for 'pTelName'
|
||||
indent_text : pc->line is 5, pc->column is 1, pc->text() is 'nTelIndex, indent_column is 17
|
||||
indent_text : orig_line is 5, indent set to 17, for 'nTelIndex'
|
||||
indent_text : pc->line is 6, pc->column is 1, pc->text() is '{, indent_column is 9
|
||||
indent_text : orig_line is 6, indent set to 9, for '{'
|
||||
indent_text : pc->line is 7, pc->column is 1, pc->text() is '}, indent_column is 9
|
||||
indent_text : orig_line is 7, indent set to 9, for '}'
|
||||
indent_text : pc->line is 9, pc->column is 1, pc->text() is '~, indent_column is 9
|
||||
indent_text : orig_line is 9, indent set to 9, for '~'
|
||||
indent_text : pc->line is 10, pc->column is 1, pc->text() is '{, indent_column is 9
|
||||
indent_text : orig_line is 10, indent set to 9, for '{'
|
||||
indent_text : pc->line is 11, pc->column is 1, pc->text() is '}, indent_column is 9
|
||||
indent_text : orig_line is 11, indent set to 9, for '}'
|
||||
indent_text : pc->line is 13, pc->column is 1, pc->text() is 'const, indent_column is 9
|
||||
indent_text : orig_line is 13, indent set to 9, for 'const'
|
||||
indent_text : pc->line is 14, pc->column is 1, pc->text() is 'unsigned, indent_column is 9
|
||||
indent_text : orig_line is 14, indent set to 9, for 'unsigned'
|
||||
indent_text : pc->line is 15, pc->column is 1, pc->text() is '}, indent_column is 1
|
||||
indent_text : orig_line is 15, indent set to 1, for '}'
|
||||
indent_text : pc->line is 1, pc->column is 1, pc->text() is 'struct, indent_column is 1
|
||||
indent_text : orig_line is 1, indent set to 1, for 'struct'
|
||||
indent_text : pc->line is 2, pc->column is 1, pc->text() is '{, indent_column is 1
|
||||
indent_text : orig_line is 2, indent set to 1, for '{'
|
||||
indent_text : pc->line is 3, pc->column is 9, pc->text() is 'TelegramIndex, indent_column is 9
|
||||
indent_text : orig_line is 3, indent set to 9, for 'TelegramIndex'
|
||||
indent_text : pc->line is 4, pc->column is 17, pc->text() is 'pTelName, indent_column is 17
|
||||
indent_text : orig_line is 4, indent set to 17, for 'pTelName'
|
||||
indent_text : pc->line is 5, pc->column is 17, pc->text() is 'nTelIndex, indent_column is 17
|
||||
indent_text : orig_line is 5, indent set to 17, for 'nTelIndex'
|
||||
indent_text : pc->line is 6, pc->column is 9, pc->text() is '{, indent_column is 9
|
||||
indent_text : orig_line is 6, indent set to 9, for '{'
|
||||
indent_text : pc->line is 7, pc->column is 9, pc->text() is '}, indent_column is 9
|
||||
indent_text : orig_line is 7, indent set to 9, for '}'
|
||||
indent_text : pc->line is 9, pc->column is 9, pc->text() is '~, indent_column is 9
|
||||
indent_text : orig_line is 9, indent set to 9, for '~'
|
||||
indent_text : pc->line is 10, pc->column is 9, pc->text() is '{, indent_column is 9
|
||||
indent_text : orig_line is 10, indent set to 9, for '{'
|
||||
indent_text : pc->line is 11, pc->column is 9, pc->text() is '}, indent_column is 9
|
||||
indent_text : orig_line is 11, indent set to 9, for '}'
|
||||
indent_text : pc->line is 13, pc->column is 9, pc->text() is 'const, indent_column is 9
|
||||
indent_text : orig_line is 13, indent set to 9, for 'const'
|
||||
indent_text : pc->line is 14, pc->column is 9, pc->text() is 'unsigned, indent_column is 9
|
||||
indent_text : orig_line is 14, indent set to 9, for 'unsigned'
|
||||
indent_text : pc->line is 15, pc->column is 1, pc->text() is '}, indent_column is 1
|
||||
indent_text : orig_line is 15, indent set to 1, for '}'
|
@ -1,17 +0,0 @@
|
||||
Newline loop start: 0
|
||||
newline_add_between : start->text() is ';', type is SEMICOLON, orig_line is 14, orig_col is 24
|
||||
newline_add_between : and end->text() is '}', orig_line is 15, orig_col is 1
|
||||
[CallStack]
|
||||
newline_add_between : start->text() is '{', type is BRACE_OPEN, orig_line is 6, orig_col is 1
|
||||
newline_add_between : and end->text() is '}', orig_line is 7, orig_col is 1
|
||||
[CallStack]
|
||||
newline_add_between : start->text() is '{', type is BRACE_OPEN, orig_line is 6, orig_col is 1
|
||||
newline_add_between : and end->text() is '}', orig_line is 7, orig_col is 1
|
||||
[CallStack]
|
||||
newline_add_between : start->text() is '{', type is BRACE_OPEN, orig_line is 10, orig_col is 1
|
||||
newline_add_between : and end->text() is '}', orig_line is 11, orig_col is 1
|
||||
[CallStack]
|
||||
newline_add_between : start->text() is '{', type is BRACE_OPEN, orig_line is 10, orig_col is 1
|
||||
newline_add_between : and end->text() is '}', orig_line is 11, orig_col is 1
|
||||
[CallStack]
|
||||
newlines_functions_remove_extra_blank_lines : nl_max_blank_in_func is zero
|
File diff suppressed because it is too large
Load Diff
Can't render this file because it has a wrong number of fields in line 3.
|
@ -1,2 +0,0 @@
|
||||
indent_off_after_return = true
|
||||
indent_off_after_return_new = false
|
@ -1 +0,0 @@
|
||||
nl_type_brace_init_lst = remove
|
@ -1 +0,0 @@
|
||||
sp_after_decltype = force
|
@ -1 +0,0 @@
|
||||
sp_after_type = force
|
@ -1 +0,0 @@
|
||||
sp_after_type = remove
|
@ -1,2 +0,0 @@
|
||||
# Add or remove space between an open paren and comma: '(,' vs '( ,'. Default=Force.
|
||||
sp_paren_comma = remove
|
@ -1,26 +0,0 @@
|
||||
#include <type_traits>
|
||||
|
||||
template <
|
||||
typename ... Args,
|
||||
typename E = typename std::enable_if<(sizeof...(Args) >= 1), bool>::type
|
||||
>
|
||||
void fun1(Args&& ... args)
|
||||
{
|
||||
}
|
||||
|
||||
template <
|
||||
typename ... Args,
|
||||
typename E = typename std::enable_if<(sizeof...(Args) > 1), bool>::type
|
||||
>
|
||||
void fun2(Args&& ... args)
|
||||
{
|
||||
}
|
||||
|
||||
template <
|
||||
typename ... Args,
|
||||
typename E = typename std::enable_if<(sizeof...(Args) < 3), bool>::type
|
||||
>
|
||||
void fun3(Args&& ... args)
|
||||
{
|
||||
}
|
||||
|
@ -1 +0,0 @@
|
||||
a(, 1);
|
@ -1,9 +0,0 @@
|
||||
void func() {
|
||||
}
|
||||
|
||||
// **ABC**
|
||||
void func() { }
|
||||
// *INDENT-ON*
|
||||
|
||||
void func() {
|
||||
}
|
@ -1,6 +0,0 @@
|
||||
namespace Constants
|
||||
{
|
||||
double PI = 3.14;
|
||||
}
|
||||
int factor = 41;
|
||||
double result = Constants::PI * factor;
|
@ -1,6 +0,0 @@
|
||||
void Foo1(BarType & x, void BarFunc());
|
||||
|
||||
void Bar()
|
||||
{
|
||||
void BarFunc2(BarType & x);
|
||||
}
|
@ -1,69 +0,0 @@
|
||||
/* EditorApplication */
|
||||
|
||||
#include <string>
|
||||
|
||||
#ifdef __OBJC__
|
||||
#import <Cocoa/Cocoa.h>
|
||||
|
||||
class HierarchyState;
|
||||
@interface EditorApplication : NSObject
|
||||
{
|
||||
IBOutlet id m_MainWindow;
|
||||
IBOutlet id m_PaneController;
|
||||
id m_RenderTimer;
|
||||
|
||||
IBOutlet id m_CutItem;
|
||||
IBOutlet id m_CopyItem;
|
||||
IBOutlet id m_PasteItem;
|
||||
|
||||
IBOutlet id m_DuplicateItem;
|
||||
IBOutlet id m_DeleteItem;
|
||||
|
||||
IBOutlet id m_FrameSelectedItem;
|
||||
IBOutlet id m_FindItem;
|
||||
IBOutlet id m_SelectAllItem;
|
||||
}
|
||||
|
||||
- (IBAction)SaveAssets:(id)sender;
|
||||
- (IBAction)CloseScene:(id)sender;
|
||||
- (IBAction)NewProject:(id)sender;
|
||||
- (IBAction)OpenProject:(id)sender;
|
||||
|
||||
- (IBAction)SaveAsSceneToDisk:(id)sender;
|
||||
|
||||
- (IBAction)EnterSerialNumber:(id)sender;
|
||||
- (IBAction)ReturnLicense:(id)sender;
|
||||
- (IBAction)CompileScene:(id)sender;
|
||||
- (IBAction)CompileSceneAutomatic:(id)sender;
|
||||
|
||||
- (IBAction)saveDocument:(id)sender;
|
||||
|
||||
- (IBAction)LoadSceneFromDisk:(id)sender;
|
||||
|
||||
- (void)RemoveDisplayTimer;
|
||||
- (void)RegisterUpdateTimer:(int)frequency;
|
||||
|
||||
- (void)refreshModifiedFile:(NSAppleEventDescriptor*)event withReplyEvent:(NSAppleEventDescriptor*)replyEvent;
|
||||
- (void)closeFile:(NSAppleEventDescriptor*)event withReplyEvent:(NSAppleEventDescriptor*)replyEvent;
|
||||
|
||||
- (IBAction)ShowAboutDialog:(id)sender;
|
||||
- (IBAction)ShowPreferences:(id)sender;
|
||||
- (IBAction)ShowPackageManager:(id)sender;
|
||||
|
||||
- (IBAction) delete:(id)sender;
|
||||
- (IBAction) copy:(id)action;
|
||||
- (IBAction)paste:(id)action;
|
||||
- (IBAction)duplicate:(id)action;
|
||||
- (IBAction)cut:(id)action;
|
||||
- (IBAction)selectAll:(id)action;
|
||||
- (IBAction)find:(id)action;
|
||||
- (IBAction)frameSelected:(id)action;
|
||||
- (IBAction)frameSelectedWithLock:(id)action;
|
||||
|
||||
// Assetstore protocol handler and registration
|
||||
- (void)registerAssetStoreURLProtocol;
|
||||
- (void)getUrl:(NSAppleEventDescriptor*)event withReplyEvent:(NSAppleEventDescriptor*)replyEvent;
|
||||
|
||||
@end
|
||||
|
||||
#endif
|
@ -1,6 +0,0 @@
|
||||
namespace Constants
|
||||
{
|
||||
double PI = 3.14;
|
||||
}
|
||||
int factor = 41;
|
||||
double result = Constants::PI * factor;
|
@ -1,38 +0,0 @@
|
||||
int foo1()
|
||||
{
|
||||
return std::pair<int, int>{
|
||||
1, 2
|
||||
}.first;
|
||||
}
|
||||
|
||||
int foo2()
|
||||
{
|
||||
return
|
||||
int{3} & 2;
|
||||
}
|
||||
|
||||
int foo3()
|
||||
{
|
||||
constexpr static int x = 3;
|
||||
return
|
||||
decltype(x){x} & 2;
|
||||
}
|
||||
|
||||
int foo4()
|
||||
{
|
||||
return
|
||||
new Type();
|
||||
}
|
||||
|
||||
int foo5()
|
||||
{
|
||||
return
|
||||
veryLongMethodCall(
|
||||
arg1,
|
||||
longMethodCall(
|
||||
methodCall(
|
||||
arg2, arg3
|
||||
), arg4
|
||||
)
|
||||
);
|
||||
}
|
@ -1 +0,0 @@
|
||||
a( , 1);
|
@ -1,7 +0,0 @@
|
||||
void func() { }
|
||||
|
||||
// **ABC**
|
||||
void func() { }
|
||||
// *INDENT-ON*
|
||||
|
||||
void func() { }
|
@ -0,0 +1,32 @@
|
||||
---
|
||||
|
||||
name: uncrustify_test
|
||||
on: [push]
|
||||
jobs:
|
||||
check-uncrustify:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: cmake-part-and-tests
|
||||
env:
|
||||
BADGE: linux
|
||||
run: mkdir build;
|
||||
cd build;
|
||||
cmake -DCMAKE_BUILD_TYPE=Release ..;
|
||||
make;
|
||||
../scripts/run_ctest.py
|
||||
|
||||
|
||||
debug-ninja-uncrustify:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: seanmiddleditch/gha-setup-ninja@master
|
||||
- name: cmake-part-and-tests
|
||||
env:
|
||||
BADGE: linux
|
||||
run: mkdir build;
|
||||
cd build;
|
||||
cmake -GNinja -DCMAKE_BUILD_TYPE=Debug ..;
|
||||
ninja;
|
||||
../scripts/run_ctest.py
|
@ -1,3 +1,28 @@
|
||||
Change highlights in uncrustify-0.73.0 (May 2021)
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
b514f25120b12db7b1ca57cdb93dd929a5bf43c4
|
||||
Added : indent_before_class_colon Nov 16 2020
|
||||
39c969b69663f6e6cee9673e23d349a308edc44a
|
||||
Added : sp_cmt_cpp_region Dec 9 2020
|
||||
9ca37d0c32729570de2e51c97338bc567e124ae3
|
||||
Added : cmt_sp_before_doxygen_javadoc_tags Dec 24 2020
|
||||
Added : cmt_align_doxygen_javadoc_tags Dec 24 2020
|
||||
84e2c750d19b47bbe2547141b092855ec1f64424
|
||||
Added : cmt_reflow_fold_regex_file Dec 24 2020
|
||||
3a8e33a12839ca3bac2e1e0b49eb279362a2ab89
|
||||
Added : processing_cmt_as_regex Dec 31 2020
|
||||
c622135751824705979d37681fe16d9a60e3d77a
|
||||
Added : cmt_reflow_indent_to_paragraph_start Jan 9 2021
|
||||
9c0799aa096b68550507980a32a529099caf97c5
|
||||
Added : sp_cpp_lambda_argument_list Jan 19 2021
|
||||
02054b1085166903e8c1384308ac7922cb57bd59
|
||||
Added : nl_do_leave_one_liners Jan 29 2021
|
||||
6a4d27914fca0c64273fad979355e16021626f8a
|
||||
Added : debug_truncate Feb 7 2021
|
||||
a711e96ef7be6afc9f014c4c7e1e5ea5347aad0d
|
||||
Added : indent_comma_brace Mar 9 2021
|
||||
|
||||
Change highlights in uncrustify-0.72.0 (November 2020)
|
||||
-------------------------------------------------------------------------------
|
||||
new command option:
|
@ -0,0 +1,246 @@
|
||||
# -*- mode: makefile; coding: utf-8 -*-
|
||||
# Copyright © 2003 Christopher L Cheney <ccheney@debian.org>
|
||||
# Copyright © 2019 TDE Team
|
||||
# Description: A class for TDE packages; sets TDE environment variables, etc
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation; either version 2, or (at
|
||||
# your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
# 02111-1307 USA.
|
||||
|
||||
ifndef _cdbs_bootstrap
|
||||
_cdbs_scripts_path ?= /usr/lib/cdbs
|
||||
_cdbs_rules_path ?= /usr/share/cdbs/1/rules
|
||||
_cdbs_class_path ?= /usr/share/cdbs/1/class
|
||||
endif
|
||||
|
||||
ifndef _cdbs_class_debian-qt-kde
|
||||
_cdbs_class_debian-qt-kde := 1
|
||||
|
||||
# for dh_icons
|
||||
CDBS_BUILD_DEPENDS := $(CDBS_BUILD_DEPENDS), debhelper (>= 5.0.7ubuntu4)
|
||||
|
||||
# Note: This _must_ be included before autotools.mk, or it won't work.
|
||||
common-configure-arch common-configure-indep:: debian/stamp-cvs-make
|
||||
debian/stamp-cvs-make:
|
||||
ifndef _cdbs_class_cmake
|
||||
cp -Rp /usr/share/aclocal/libtool.m4 admin/libtool.m4.in
|
||||
ifneq "$(wildcard /usr/share/libtool/config/ltmain.sh)" ""
|
||||
cp -Rp /usr/share/libtool/config/ltmain.sh admin/ltmain.sh
|
||||
endif
|
||||
ifneq "$(wildcard /usr/share/libtool/build-aux/ltmain.sh)" ""
|
||||
cp -Rp /usr/share/libtool/build-aux/ltmain.sh admin/ltmain.sh
|
||||
endif
|
||||
$(MAKE) -C $(DEB_SRCDIR) -f admin/Makefile.common dist;
|
||||
endif
|
||||
touch debian/stamp-cvs-make
|
||||
|
||||
include $(_cdbs_rules_path)/buildcore.mk$(_cdbs_makefile_suffix)
|
||||
|
||||
ifdef _cdbs_tarball_dir
|
||||
DEB_BUILDDIR = $(_cdbs_tarball_dir)/obj-$(DEB_BUILD_GNU_TYPE)
|
||||
else
|
||||
DEB_BUILDDIR = obj-$(DEB_BUILD_GNU_TYPE)
|
||||
endif
|
||||
|
||||
ifndef _cdbs_class_cmake
|
||||
include $(_cdbs_class_path)/autotools.mk$(_cdbs_makefile_suffix)
|
||||
endif
|
||||
|
||||
ifdef _cdbs_class_cmake
|
||||
ifneq "$(wildcard /usr/bin/ninja)" ""
|
||||
MAKE = ninja -v
|
||||
DEB_MAKE_ENVVARS += DESTDIR=$(DEB_DESTDIR)
|
||||
DEB_MAKE_INSTALL_TARGET = install
|
||||
DEB_CMAKE_NORMAL_ARGS += -GNinja
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef _cdbs_rules_patchsys_quilt
|
||||
DEB_PATCHDIRS := debian/patches/common debian/patches
|
||||
endif
|
||||
|
||||
export kde_cgidir = \$${libdir}/cgi-bin
|
||||
export kde_confdir = \$${sysconfdir}/trinity
|
||||
export kde_htmldir = \$${datadir}/doc/tde/HTML
|
||||
|
||||
DEB_KDE_ENABLE_FINAL := yes
|
||||
DEB_INSTALL_DOCS_ALL :=
|
||||
|
||||
DEB_DH_MAKESHLIBS_ARGS_ALL := -V
|
||||
DEB_SHLIBDEPS_INCLUDE = $(foreach p,$(PACKAGES_WITH_LIBS),debian/$(p)/usr/lib)
|
||||
|
||||
DEB_AC_AUX_DIR = $(DEB_SRCDIR)/admin
|
||||
DEB_CONFIGURE_INCLUDEDIR = "\$${prefix}/include"
|
||||
DEB_COMPRESS_EXCLUDE = .dcl .docbook -license .tag .sty .el
|
||||
|
||||
# The default gzip compressor has been changed in dpkg >= 1.17.0.
|
||||
deb_default_compress = $(shell LANG=C dpkg-deb --version | head -n1 | \
|
||||
sed -e "s|.*version ||" -e "s| .*||" | \
|
||||
xargs -r dpkg --compare-versions 1.17.0 lt \
|
||||
&& echo xz || echo gzip)
|
||||
ifeq ($(deb_default_compress),gzip)
|
||||
DEB_DH_BUILDDEB_ARGS += -- -Z$(shell dpkg-deb --help | grep -q ":.* xz[,.]" \
|
||||
&& echo xz || echo bzip2)
|
||||
endif
|
||||
|
||||
ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
|
||||
cdbs_treat_me_gently_arches := arm m68k alpha ppc64 armel armeb
|
||||
ifeq (,$(filter $(DEB_HOST_ARCH_CPU),$(cdbs_treat_me_gently_arches)))
|
||||
cdbs_kde_enable_final = $(if $(DEB_KDE_ENABLE_FINAL),--enable-final,)
|
||||
else
|
||||
cdbs_kde_enable_final =
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq (,$(filter nostrip,$(DEB_BUILD_OPTIONS)))
|
||||
cdbs_kde_enable_final =
|
||||
cdbs_kde_enable_debug = --enable-debug=yes
|
||||
else
|
||||
cdbs_kde_enable_debug = --disable-debug
|
||||
endif
|
||||
|
||||
ifneq (,$(filter debug,$(DEB_BUILD_OPTIONS)))
|
||||
cdbs_kde_enable_debug = --enable-debug=full
|
||||
endif
|
||||
|
||||
DEB_BUILD_PARALLEL ?= true
|
||||
|
||||
cdbs_configure_flags += \
|
||||
--with-qt-dir=/usr/share/qt3 \
|
||||
--disable-rpath \
|
||||
--with-xinerama \
|
||||
$(cdbs_kde_enable_final) \
|
||||
$(cdbs_kde_enable_debug)
|
||||
|
||||
|
||||
# This is a convenience target for calling manually.
|
||||
# It's not part of the build process.
|
||||
buildprep: clean apply-patches
|
||||
ifndef _cdbs_class_cmake
|
||||
$(MAKE) -f admin/Makefile.common dist
|
||||
endif
|
||||
debian/rules clean
|
||||
|
||||
.tdepkginfo:
|
||||
echo "# TDE package information" >.tdepkginfo
|
||||
dpkg-parsechangelog | sed -n "s|^Source: |Name: |p" >>.tdepkginfo
|
||||
dpkg-parsechangelog | sed -n "s|^Version: |Version: |p" >>.tdepkginfo
|
||||
date +"DateTime: %m/%d/%Y %H:%M" -u -d "$$(dpkg-parsechangelog | sed -n 's|^Date: ||p')" >>.tdepkginfo
|
||||
|
||||
post-patches:: .tdepkginfo
|
||||
|
||||
common-build-arch:: debian/stamp-man-pages
|
||||
debian/stamp-man-pages:
|
||||
if ! test -d debian/man/out; then mkdir -p debian/man/out; fi
|
||||
for f in $$(find debian/man -name '*.sgml'); do \
|
||||
docbook-to-man $$f > debian/man/out/`basename $$f .sgml`.1; \
|
||||
done
|
||||
for f in $$(find debian/man -name '*.man'); do \
|
||||
soelim -I debian/man $$f \
|
||||
> debian/man/out/`basename $$f .man`.`head -n1 $$f | awk '{print $$NF}'`; \
|
||||
done
|
||||
touch debian/stamp-man-pages
|
||||
|
||||
common-binary-indep::
|
||||
( set -e; \
|
||||
tmpf=`mktemp debian/versions.XXXXXX`; \
|
||||
perl debian/cdbs/versions.pl >$$tmpf; \
|
||||
for p in $(DEB_INDEP_PACKAGES); do \
|
||||
cat $$tmpf >>debian/$$p.substvars; \
|
||||
done; \
|
||||
rm -f $$tmpf )
|
||||
|
||||
common-binary-arch::
|
||||
( set -e; \
|
||||
tmpf=`mktemp debian/versions.XXXXXX`; \
|
||||
perl debian/cdbs/versions.pl >$$tmpf; \
|
||||
for p in $(DEB_ARCH_PACKAGES); do \
|
||||
cat $$tmpf >>debian/$$p.substvars; \
|
||||
done; \
|
||||
rm -f $$tmpf )
|
||||
# update multi-arch path in install files
|
||||
ls -d debian/* | \
|
||||
grep -E "(install|links)$$" | \
|
||||
while read a; do \
|
||||
[ -d $$a ] || [ -f $$a.arch ] || \
|
||||
! grep -q "\$$(DEB_HOST_MULTIARCH)" $$a || \
|
||||
sed -i.arch "s|\$$(DEB_HOST_MULTIARCH)|$(DEB_HOST_MULTIARCH)|g" $$a; \
|
||||
done
|
||||
|
||||
clean::
|
||||
rm -rf debian/man/out
|
||||
-rmdir debian/man
|
||||
rm -f debian/stamp-man-pages
|
||||
rm -rf debian/shlibs-check
|
||||
# revert multi-arch path in install files
|
||||
ls -d debian/* | \
|
||||
grep -E "(install|links)$$" | \
|
||||
while read a; do \
|
||||
[ ! -f $$a.arch ] || \
|
||||
mv $$a.arch $$a; \
|
||||
done
|
||||
|
||||
$(patsubst %,binary-install/%,$(DEB_PACKAGES)) :: binary-install/%:
|
||||
if test -x /usr/bin/dh_icons; then dh_icons -p$(cdbs_curpkg) $(DEB_DH_ICONCACHE_ARGS); fi
|
||||
if test -x /usr/bin/dh_desktop; then dh_desktop -p$(cdbs_curpkg) $(DEB_DH_DESKTOP_ARGS); fi
|
||||
if test -e debian/$(cdbs_curpkg).lintian; then \
|
||||
install -p -D -m644 debian/$(cdbs_curpkg).lintian \
|
||||
debian/$(cdbs_curpkg)/usr/share/lintian/overrides/$(cdbs_curpkg); \
|
||||
fi
|
||||
if test -e debian/$(cdbs_curpkg).presubj; then \
|
||||
install -p -D -m644 debian/$(cdbs_curpkg).presubj \
|
||||
debian/$(cdbs_curpkg)/usr/share/bug/$(cdbs_curpkg)/presubj; \
|
||||
fi
|
||||
|
||||
binary-install/$(DEB_SOURCE_PACKAGE)-doc-html::
|
||||
set -e; \
|
||||
for doc in `cd $(DEB_DESTDIR)/opt/trinity/share/doc/tde/HTML/en; find . -name index.docbook`; do \
|
||||
pkg=$${doc%/index.docbook}; pkg=$${pkg#./}; \
|
||||
echo Building $$pkg HTML docs...; \
|
||||
mkdir -p $(CURDIR)/debian/$(DEB_SOURCE_PACKAGE)-doc-html/opt/trinity/share/doc/tde/HTML/en/$$pkg; \
|
||||
cd $(CURDIR)/debian/$(DEB_SOURCE_PACKAGE)-doc-html/opt/trinity/share/doc/tde/HTML/en/$$pkg; \
|
||||
/opt/trinity/bin/meinproc $(DEB_DESTDIR)/opt/trinity/share/doc/tde/HTML/en/$$pkg/index.docbook; \
|
||||
done
|
||||
for pkg in $(DOC_HTML_PRUNE) ; do \
|
||||
rm -rf debian/$(DEB_SOURCE_PACKAGE)-doc-html/opt/trinity/share/doc/tde/HTML/en/$$pkg; \
|
||||
done
|
||||
|
||||
common-build-indep:: debian/stamp-kde-apidox
|
||||
debian/stamp-kde-apidox:
|
||||
$(if $(DEB_KDE_APIDOX),+$(DEB_MAKE_INVOKE) apidox)
|
||||
touch $@
|
||||
|
||||
common-install-indep:: common-install-kde-apidox
|
||||
common-install-kde-apidox::
|
||||
$(if $(DEB_KDE_APIDOX),+DESTDIR=$(DEB_DESTDIR) $(DEB_MAKE_INVOKE) install-apidox)
|
||||
|
||||
cleanbuilddir::
|
||||
-$(if $(call cdbs_streq,$(DEB_BUILDDIR),$(DEB_SRCDIR)),,rm -rf $(DEB_BUILDDIR))
|
||||
|
||||
clean::
|
||||
ifndef _cdbs_class_cmake
|
||||
if test -n "$(DEB_KDE_CVS_MAKE)" && test -d $(DEB_SRCDIR); then \
|
||||
cd $(DEB_SRCDIR); \
|
||||
find . -name Makefile.in -print | \
|
||||
xargs --no-run-if-empty rm -f; \
|
||||
rm -f Makefile.am acinclude.m4 aclocal.m4 config.h.in \
|
||||
configure configure.files configure.in stamp-h.in \
|
||||
subdirs; \
|
||||
fi
|
||||
endif
|
||||
rm -f .tdepkginfo
|
||||
rm -f debian/stamp-kde-apidox
|
||||
rm -f debian/stamp-cvs-make
|
||||
|
||||
endif
|
@ -0,0 +1,19 @@
|
||||
#!/usr/bin/env perl
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
my $version = `dpkg-parsechangelog | awk '/^Version/ {print \$2}'`;
|
||||
my ($version3, $version3_next);
|
||||
my ($version2, $version2_next);
|
||||
|
||||
($version3 = $version) =~ s/^(([^.]+\.){2}[^.+~-]+)[.+~-]?[^-]*-[^-]+$/$1/;
|
||||
($version2 = $version3) =~ s/\.[^.]+$//;
|
||||
|
||||
($version3_next = $version3) =~ s/(?<=\.)(\d+)[a-z]?$/($1+1)/e;
|
||||
($version2_next = $version2) =~ s/(?<=\.)(\d+)$/($1+1)/e;
|
||||
|
||||
print "TDE-Version3=$version3\n";
|
||||
print "TDE-Version2=$version2\n";
|
||||
print "TDE-Next-Version3=$version3_next\n";
|
||||
print "TDE-Next-Version2=$version2_next\n";
|
@ -1,3 +1,9 @@
|
||||
uncrustify-trinity (0.73.0-0debian11.0.0+0) unstable; urgency=medium
|
||||
|
||||
* TDE version of upstream 0.73.0
|
||||
|
||||
-- Michele Calgaro <michele.calgaro@yahoo.it> Wed, 19 May 2021 15:58:50 +0900
|
||||
|
||||
uncrustify-trinity (0.72.0-0debian11.0.0+8) unstable; urgency=medium
|
||||
|
||||
* Switch to build using ninja-build
|
@ -0,0 +1,15 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
include /usr/share/cdbs/1/rules/debhelper.mk
|
||||
include /usr/share/cdbs/1/class/cmake.mk
|
||||
include debian/cdbs/debian-tde.mk
|
||||
|
||||
DEB_CMAKE_EXTRA_FLAGS := \
|
||||
-DCMAKE_EXPORT_COMPILE_COMMANDS="ON" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCMAKE_VERBOSE_MAKEFILE="ON" \
|
||||
-DCMAKE_SKIP_RPATH="OFF" \
|
||||
-DBUILD_TESTING="ON" \
|
||||
-DUNCRUSTIFY_SEPARATE_TESTS="ON"
|
||||
|
||||
DEB_MAKE_CHECK_TARGET = test
|
After Width: | Height: | Size: 23 KiB |
@ -0,0 +1,52 @@
|
||||
2020-11-09
|
||||
|
||||
Tracking is used to put some marks within a copy of the source and
|
||||
in the log file. uncrustify generate a HTML file with the marks.
|
||||
|
||||
Using a browser, one can see where, which options are working.
|
||||
|
||||
The command option is:
|
||||
|
||||
uncrustify --tracking Track.html -c config-FILE -f source-FILE -L A 2>A.txt
|
||||
|
||||
Tracking puts a red "M" in the source to show where the options are working.
|
||||
A tracking number is used and writen in the Track.html file and the output file A.txt
|
||||
to make possible to link the changes together.
|
||||
|
||||
An example:
|
||||
|
||||
tracking.cpp
|
||||
{
|
||||
a = b + 111-55;
|
||||
}
|
||||
|
||||
The config file:
|
||||
|
||||
indent_with_tabs = 0
|
||||
sp_arith = force
|
||||
sp_assign = force
|
||||
|
||||
The tracking file is:
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
||||
<title>Uncrustify: where do the Spaces options work</title>
|
||||
</head>
|
||||
<body lang="en-US">
|
||||
<p>
|
||||
</p>
|
||||
<pre>
|
||||
{
|
||||
a<a title="1,8,sp_assign"><font color="red">M</font></a>=<a title="2,9,16,sp_assign"><font color="red">M</font><
|
||||
/a>b<a title="3,10,17,22,sp_arith"><font color="red">M</font></a>+<a title="4,11,18,23,27,sp_arith"><font color="red">M<
|
||||
/font></a>111<a title="5,12,19,24,28,31,sp_arith"><font color="red">M</font></a>-<a title="6,13,20,25,29,32,34,sp_arith"
|
||||
><font color="red">M</font></a>55<a title="7,14,21,26,30,33,35,36,sp_before_semi"><font color="red">M</font></a>;
|
||||
}
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Use it with a browser and you can see the red "M"s.
|
||||
Let put the cursor on the "M"s, and you see the tracking number and the option used.
|
||||
(look at the picture track.jpg)
|
@ -0,0 +1,22 @@
|
||||
2021-01-23
|
||||
|
||||
Guy Maurel
|
||||
|
||||
The do_space function within the file space.cpp controls the space between every two tokens.
|
||||
|
||||
There are three categories of actions.
|
||||
The first one is the most important.
|
||||
Options control what is to do with the interval between the two token:
|
||||
* "Ignore" means do not change it.
|
||||
* "Add" in the context of spaces means make sure there is at least 1.
|
||||
* "Add" elsewhere means make sure one is present.
|
||||
* "Remove" mean remove the space/brace/newline/etc.
|
||||
* "Force" in the context of spaces means ensure that there is exactly 1.
|
||||
* "Force" in other contexts means the same as "add".
|
||||
For example the option "sp_before_assign":
|
||||
Add or remove space before assignment operator '=', '+=', etc.
|
||||
in such a statement:
|
||||
a =5;
|
||||
|
||||
The second categorie is used for all positions where no option is coded.
|
||||
The third categorie is a debug for the developer, who still have something to do.
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 462 B After Width: | Height: | Size: 462 B |
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.7 KiB |
@ -0,0 +1,18 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
||||
<title>Uncrustify: where do the Spaces options work</title>
|
||||
</head>
|
||||
<body lang="en-US">
|
||||
<p>
|
||||
</p>
|
||||
<pre>
|
||||
{
|
||||
a<a title="1,8,sp_assign"><font color="red">M</font></a>=<a title="2,9,16,sp_assign"><font color="red">M</font><
|
||||
/a>b<a title="3,10,17,22,sp_arith"><font color="red">M</font></a>+<a title="4,11,18,23,27,sp_arith"><font color="red">M<
|
||||
/font></a>111<a title="5,12,19,24,28,31,sp_arith"><font color="red">M</font></a>-<a title="6,13,20,25,29,32,34,sp_arith"
|
||||
><font color="red">M</font></a>55<a title="7,14,21,26,30,33,35,36,sp_before_semi"><font color="red">M</font></a>;
|
||||
}
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "uncrustify",
|
||||
"version": "0.72.0",
|
||||
"version": "0.73.0",
|
||||
"description": "A highly configurable, easily modifiable source code beautifier for C, C++, C#, ObjectiveC, D, Java, Pawn and VALA",
|
||||
"main": "uncrustify",
|
||||
"scripts": {
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,496 @@
|
||||
/**
|
||||
* @file combine_fix_mark_enum_struct_union.h
|
||||
*
|
||||
* @author
|
||||
* @license GPL v2+
|
||||
* extract from combine_fix_mark.h
|
||||
*/
|
||||
|
||||
#ifndef ENUM_STRUCT_UNION_PARSER_H_INCLUDED
|
||||
#define ENUM_STRUCT_UNION_PARSER_H_INCLUDED
|
||||
|
||||
#include "pcf_flags.h"
|
||||
#include "token_enum.h"
|
||||
#include <map>
|
||||
|
||||
|
||||
/**
|
||||
* Class EnumStructUnionParser : This class facilitates the parsing and interpretation
|
||||
* of ALL instances of the class, enum, union, and
|
||||
* struct keywords, including user-defined types with
|
||||
* a body {} and any trailing inline variable declarations
|
||||
* that may follow the definition (as permitted by
|
||||
* the coding language in question). The class also
|
||||
* interprets variable declarations preceded by one
|
||||
* of those keywords, as well as any C/C++ forward
|
||||
* declarations
|
||||
*/
|
||||
class EnumStructUnionParser
|
||||
{
|
||||
public:
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
EnumStructUnionParser();
|
||||
|
||||
|
||||
/**
|
||||
* Destructor
|
||||
*/
|
||||
~EnumStructUnionParser();
|
||||
|
||||
|
||||
private:
|
||||
/**
|
||||
* Analyzes all identifiers (marked as CT_WORD) between the starting and
|
||||
* ending chunks and changes CT_WORD to one of CT_TYPE, CT_MACRO_FUNC_CALL,
|
||||
* etc. and sets flags (PCF_VAR_1ST, PCF_VAR_1ST_DEF, PCF_VAR_INLINE, etc.)
|
||||
* for variable identifiers accordingly. Flags C++ forward declarations as
|
||||
* PCF_INCOMPLETE
|
||||
*/
|
||||
void analyze_identifiers();
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if a pair of braces were both detected AND determined to be
|
||||
* part of a class/enum/struct/union body
|
||||
*/
|
||||
bool body_detected() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if comma-separated values were detected during parsing
|
||||
*/
|
||||
bool comma_separated_values_detected() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if an enumerated integral type was detected during parsing
|
||||
*/
|
||||
bool enum_base_detected() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the end chunk of a class/enum/struct/union body, if detected
|
||||
* during parsing
|
||||
*/
|
||||
struct chunk_t *get_body_end() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the starting chunk of a class/enum/struct/union body, if detected
|
||||
* during parsing
|
||||
*/
|
||||
struct chunk_t *get_body_start() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the starting chunk associated with an enumerated type's base
|
||||
* specifier statement, if detected during parsing
|
||||
*/
|
||||
struct chunk_t *get_enum_base_start() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the first comma encountered at the level of the starting chunk,
|
||||
* if detected during parsing
|
||||
*/
|
||||
struct chunk_t *get_first_top_level_comma() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the ending chunk associated with an class/struct inheritance
|
||||
* list, if detected during parsing
|
||||
*/
|
||||
struct chunk_t *get_inheritance_end() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the starting chunk associated with an class/struct inheritance
|
||||
* list, if detected during parsing
|
||||
*/
|
||||
struct chunk_t *get_inheritance_start() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns a numerically-indexed map of all question operators encountered
|
||||
* during parsing
|
||||
*/
|
||||
std::map<std::size_t, struct chunk_t *> get_question_operators() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns the end chunk associated with a template parameter list, if
|
||||
* detected during parsing
|
||||
*/
|
||||
struct chunk_t *get_template_end() const;
|
||||
|
||||
|
||||
/**
|
||||
* Return the starting chunk associated with a template parameter list, if
|
||||
* detected during parsing
|
||||
*/
|
||||
struct chunk_t *get_template_start() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns a numerically-indexed map of all top-level commas encountered
|
||||
* during parsing
|
||||
*/
|
||||
std::map<std::size_t, struct chunk_t *> get_top_level_commas() const;
|
||||
|
||||
|
||||
/**
|
||||
* Return the starting chunk associated with a where clause, if
|
||||
* detected during parsing
|
||||
*/
|
||||
struct chunk_t *get_where_end() const;
|
||||
|
||||
|
||||
/**
|
||||
* Return the starting chunk associated with a where clause, if
|
||||
* detected during parsing
|
||||
*/
|
||||
struct chunk_t *get_where_start() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if an inheritance list associated with a class or struct was
|
||||
* discovered during parsing
|
||||
*/
|
||||
bool inheritance_detected() const;
|
||||
|
||||
|
||||
public:
|
||||
/**
|
||||
* Performs object initialization prior to parsing
|
||||
*/
|
||||
void initialize(struct chunk_t *pc);
|
||||
|
||||
|
||||
private:
|
||||
/**
|
||||
* Returns true if the chunk under test represents a potential end chunk past
|
||||
* which further parsing is not likely warranted
|
||||
*/
|
||||
bool is_potential_end_chunk(struct chunk_t *pc) const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if the chunk under test is deemed to be located within a
|
||||
* conditional/ternary statement
|
||||
*/
|
||||
bool is_within_conditional(struct chunk_t *pc) const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if the chunk under test is deemed to be located within an
|
||||
* inheritance list
|
||||
*/
|
||||
bool is_within_inheritance_list(struct chunk_t *pc) const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if the chunk under test is deemed to be located within a
|
||||
* where clause
|
||||
*/
|
||||
bool is_within_where_clause(struct chunk_t *pc) const;
|
||||
|
||||
|
||||
/**
|
||||
* Marks all base classes that appear as part of an inheritance list
|
||||
*/
|
||||
void mark_base_classes(struct chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Marks pairs of braces associated with the body of a class/enum/struct/union,
|
||||
* and additionally calls a separate routine to mark any base classes for that
|
||||
* may precede the opening brace
|
||||
*/
|
||||
void mark_braces(struct chunk_t *start);
|
||||
|
||||
|
||||
/**
|
||||
* Marks the beginning chunk of an inheritance list
|
||||
*/
|
||||
void mark_class_colon(struct chunk_t *colon);
|
||||
|
||||
|
||||
/**
|
||||
* Mark a colon as a conditional
|
||||
*/
|
||||
void mark_conditional_colon(struct chunk_t *colon);
|
||||
|
||||
|
||||
/**
|
||||
* Mark any struct/class constructor declarations/definitions
|
||||
*/
|
||||
void mark_constructors();
|
||||
|
||||
|
||||
/**
|
||||
* Marks the beginning chunk of an enumerated integral type specification
|
||||
*/
|
||||
void mark_enum_integral_type(struct chunk_t *colon);
|
||||
|
||||
|
||||
/**
|
||||
* Scan chunks outside the definition body and mark lvalues accordingly
|
||||
*/
|
||||
void mark_extracorporeal_lvalues();
|
||||
|
||||
|
||||
/**
|
||||
* Mark nested name specifiers preceding qualified identifiers
|
||||
*/
|
||||
void mark_nested_name_specifiers(struct chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Marks pointer operators preceding a variable identifier
|
||||
*/
|
||||
void mark_pointer_types(struct chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Marks the beginning and ending chunks associated with a template
|
||||
* (templates may appear after the identifier type name as part of a class
|
||||
* specialization)
|
||||
*/
|
||||
void mark_template(struct chunk_t *start) const;
|
||||
|
||||
|
||||
/**
|
||||
* Marks the arguments within a template argument list bounded by the
|
||||
* starting and ending chunks
|
||||
*/
|
||||
void mark_template_args(struct chunk_t *start, struct chunk_t *end) const;
|
||||
|
||||
|
||||
/**
|
||||
* Marks the type identifier associated with the class/enum/struct/union,
|
||||
* if not anonymously defined
|
||||
*/
|
||||
void mark_type(struct chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Marks all variable identifiers associated with the class/enum/struct/union
|
||||
*/
|
||||
void mark_variable(struct chunk_t *variable, pcf_flags_t flags);
|
||||
|
||||
|
||||
/**
|
||||
* Marks all chunks belonging to a c# where clause
|
||||
*/
|
||||
void mark_where_clause(struct chunk_t *where);
|
||||
|
||||
|
||||
/**
|
||||
* Marks the beginning of a where clause
|
||||
*/
|
||||
void mark_where_colon(struct chunk_t *colon);
|
||||
|
||||
|
||||
public:
|
||||
/**
|
||||
* Parses the class/enum/struct/union and all associated chunks
|
||||
*/
|
||||
void parse(struct chunk_t *pc);
|
||||
|
||||
|
||||
private:
|
||||
/**
|
||||
* Parses closing and opening angle brackets
|
||||
*/
|
||||
struct chunk_t *parse_angles(struct chunk_t *angle_open);
|
||||
|
||||
|
||||
/**
|
||||
* Parses closing and opening braces
|
||||
*/
|
||||
struct chunk_t *parse_braces(struct chunk_t *brace_open);
|
||||
|
||||
|
||||
/**
|
||||
* Parses a single colon, which may precede an inheritance list or
|
||||
* enumerated integral type specification
|
||||
*/
|
||||
void parse_colon(struct chunk_t *colon);
|
||||
|
||||
|
||||
/**
|
||||
* Parses a double colon, which may indicate a scope resolution chain
|
||||
*/
|
||||
struct chunk_t *parse_double_colon(struct chunk_t *double_colon);
|
||||
|
||||
|
||||
/**
|
||||
* Returns the parsing error status
|
||||
*/
|
||||
bool parse_error_detected() const;
|
||||
|
||||
|
||||
/**
|
||||
* Sets the parsing error status
|
||||
*/
|
||||
void parse_error_detected(bool status);
|
||||
|
||||
|
||||
/**
|
||||
* Records all question operators encountered during parsing
|
||||
*/
|
||||
void record_question_operator(struct chunk_t *question);
|
||||
|
||||
|
||||
/**
|
||||
* Records a comma chunk given one the following conditions are satisfied:
|
||||
* 1) it is encountered at the level of the starting chunk
|
||||
* 2) it is not part of a right-hand side assignment
|
||||
* 3) it is not part of an inheritance list
|
||||
* 4) it is not part of a conditional/ternary expression
|
||||
*/
|
||||
void record_top_level_comma(struct chunk_t *comma);
|
||||
|
||||
|
||||
/**
|
||||
* Adjusts the end chunk returned by the try_find_end_chunk() function
|
||||
* for any potential trailing inline variable declarations that may follow
|
||||
* the body of a class/enum/struct/union definition
|
||||
*/
|
||||
struct chunk_t *refine_end_chunk(struct chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Sets the chunk associated with the end of a class/enum/struct/union
|
||||
* body
|
||||
*/
|
||||
void set_body_end(struct chunk_t *body_end);
|
||||
|
||||
|
||||
/**
|
||||
* Sets the chunk associated with the start of a class/enum/struct/union
|
||||
* body
|
||||
*/
|
||||
void set_body_start(struct chunk_t *body_start);
|
||||
|
||||
|
||||
/**
|
||||
* Sets the chunk associated with the start of an enumerated integral
|
||||
* base type specification
|
||||
*/
|
||||
void set_enum_base_start(struct chunk_t *enum_base_start);
|
||||
|
||||
|
||||
/**
|
||||
* Sets the chunk associated with the start of an inheritance list
|
||||
*/
|
||||
void set_inheritance_start(struct chunk_t *inheritance_start);
|
||||
|
||||
|
||||
/**
|
||||
* Sets the chunk associated with the end of a template
|
||||
*/
|
||||
void set_template_end(struct chunk_t *template_end);
|
||||
|
||||
|
||||
/**
|
||||
* Sets the chunk associated with the start of a template
|
||||
*/
|
||||
void set_template_start(struct chunk_t *template_start);
|
||||
|
||||
|
||||
/**
|
||||
* Return the ending chunk associated with a where clause, if
|
||||
* detected during parsing
|
||||
*/
|
||||
void set_where_end(struct chunk_t *where_end);
|
||||
|
||||
|
||||
/**
|
||||
* Return the starting chunk associated with a where clause, if
|
||||
* detected during parsing
|
||||
*/
|
||||
void set_where_start(struct chunk_t *where_start);
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if a template was detected during parsing
|
||||
*/
|
||||
bool template_detected() const;
|
||||
|
||||
|
||||
/**
|
||||
* Attempts to find the last chunk associated with the class/enum/struct/union
|
||||
*/
|
||||
struct chunk_t *try_find_end_chunk(struct chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Attempts to identify any function-like macro calls which may precede the
|
||||
* actual type identifier
|
||||
*/
|
||||
void try_post_identify_macro_calls();
|
||||
|
||||
|
||||
/**
|
||||
* Attempts to find the identifier type name (if not anonymously-defined) post
|
||||
* variable identifier interpretation
|
||||
*/
|
||||
void try_post_identify_type();
|
||||
|
||||
|
||||
/**
|
||||
* Attempts to find the identifier type name prior to variable identifier
|
||||
* interpretation
|
||||
*/
|
||||
bool try_pre_identify_type();
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if a corresponding type was identified for the class/enum/struct/union
|
||||
*/
|
||||
bool type_identified() const;
|
||||
|
||||
|
||||
/**
|
||||
* Returns true if a where clause was detected during parsing
|
||||
*/
|
||||
bool where_clause_detected() const;
|
||||
|
||||
|
||||
/**
|
||||
* Map of token-type, chunk pairs
|
||||
*/
|
||||
std::map<c_token_t, std::map<std::size_t, struct chunk_t *> > m_chunk_map;
|
||||
|
||||
|
||||
/**
|
||||
* Indicates the last chunk associated with the class/enum/struct/union keyword
|
||||
*/
|
||||
struct chunk_t *m_end;
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether or not a parse error has occurred
|
||||
*/
|
||||
bool m_parse_error;
|
||||
|
||||
|
||||
/**
|
||||
* Stores a pointer to the class/enum/struct/union keyword chunk with which the
|
||||
* parse() routine was invoked
|
||||
*/
|
||||
struct chunk_t *m_start;
|
||||
|
||||
|
||||
/**
|
||||
* Stores a pointer to the type identifier associated with the class/enum/struct/union,
|
||||
* if not anonymously defined
|
||||
*/
|
||||
struct chunk_t *m_type;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
@ -0,0 +1,302 @@
|
||||
// *INDENT-OFF*
|
||||
{ CT_ACCESS, CT_TYPE },
|
||||
{ CT_ACCESS, CT_WORD },
|
||||
{ CT_ALIGN, CT_PAREN_OPEN },
|
||||
{ CT_AMP, CT_WORD },
|
||||
{ CT_ANGLE_CLOSE, CT_BRACE_OPEN },
|
||||
{ CT_ANNOTATION, CT_ANNOTATION },
|
||||
{ CT_ANNOTATION, CT_TYPE },
|
||||
{ CT_ASM_COLON, CT_ASM_COLON },
|
||||
{ CT_ASM_COLON, CT_STRING },
|
||||
{ CT_ASM, CT_FUNC_CALL },
|
||||
{ CT_ASM, CT_PAREN_OPEN },
|
||||
{ CT_ASM, CT_QUALIFIER },
|
||||
{ CT_ASSERT, CT_PAREN_OPEN },
|
||||
{ CT_ASSIGN_FUNC_PROTO, CT_DEFAULT },
|
||||
{ CT_ASSIGN_FUNC_PROTO, CT_DELETE },
|
||||
{ CT_ASSIGN_FUNC_PROTO, CT_NUMBER },
|
||||
{ CT_ATTRIBUTE, CT_ATTRIBUTE },
|
||||
{ CT_ATTRIBUTE, CT_BRACE_OPEN },
|
||||
{ CT_ATTRIBUTE, CT_CASE },
|
||||
{ CT_ATTRIBUTE, CT_QUALIFIER },
|
||||
{ CT_ATTRIBUTE, CT_TYPE },
|
||||
{ CT_ATTRIBUTE, CT_WORD },
|
||||
{ CT_AUTORELEASEPOOL, CT_BRACE_OPEN },
|
||||
{ CT_BIT_COLON, CT_NUMBER },
|
||||
{ CT_BIT_COLON, CT_SIZEOF },
|
||||
{ CT_BIT_COLON, CT_TYPE },
|
||||
{ CT_BIT_COLON, CT_WORD },
|
||||
{ CT_BODY, CT_BRACE_OPEN },
|
||||
{ CT_BRACE_CLOSE, CT_BRACE_OPEN },
|
||||
{ CT_BRACE_CLOSE, CT_CLASS },
|
||||
{ CT_BRACE_CLOSE, CT_FUNC_CALL },
|
||||
{ CT_BRACE_CLOSE, CT_GETSET },
|
||||
{ CT_BRACE_CLOSE, CT_IF },
|
||||
{ CT_BRACE_CLOSE, CT_OC_MSG_NAME },
|
||||
{ CT_BRACE_CLOSE, CT_PAREN_OPEN },
|
||||
{ CT_BRACE_CLOSE, CT_QUALIFIER },
|
||||
{ CT_BRACE_CLOSE, CT_RETURN },
|
||||
{ CT_BRACE_CLOSE, CT_TYPE },
|
||||
{ CT_BRACE_CLOSE, CT_WORD },
|
||||
{ CT_BREAK, CT_WORD },
|
||||
{ CT_BYREF, CT_INV },
|
||||
{ CT_CASE_COLON, CT_ATTRIBUTE },
|
||||
{ CT_CASE_COLON, CT_BRACE_OPEN },
|
||||
{ CT_CASE_COLON, CT_BREAK },
|
||||
{ CT_CASE_COLON, CT_RETURN },
|
||||
{ CT_CASE_COLON, CT_WORD },
|
||||
{ CT_CASE, CT_NEG },
|
||||
{ CT_CASE, CT_PAREN_OPEN },
|
||||
{ CT_CASE, CT_STRING },
|
||||
{ CT_CASE_ELLIPSIS, CT_NUMBER },
|
||||
{ CT_CATCH, CT_FUNC_CALL },
|
||||
{ CT_CLASS_COLON, CT_FUNC_CALL },
|
||||
{ CT_CLASS_COLON, CT_QUALIFIER },
|
||||
{ CT_CLASS_COLON, CT_TYPE },
|
||||
{ CT_CLASS_COLON, CT_WORD },
|
||||
{ CT_COLON, CT_COLON },
|
||||
{ CT_COLON, CT_NUMBER },
|
||||
{ CT_COLON, CT_QUALIFIER },
|
||||
{ CT_COLON, CT_STRING },
|
||||
{ CT_COLON, CT_TYPE },
|
||||
{ CT_COLON, CT_WORD },
|
||||
{ CT_COMMENT_EMBED, CT_FUNC_CLASS_PROTO },
|
||||
{ CT_COMMENT_MULTI, CT_ELSE },
|
||||
{ CT_CONCAT, CT_STRING },
|
||||
{ CT_CONCAT, CT_WORD },
|
||||
{ CT_COND_COLON, CT_FUNC_CALL },
|
||||
{ CT_COND_COLON, CT_STRING },
|
||||
{ CT_COND_COLON, CT_WORD },
|
||||
{ CT_CONSTR_COLON, CT_FUNC_CALL },
|
||||
{ CT_CONSTR_COLON, CT_FUNC_CLASS_DEF },
|
||||
{ CT_CONSTR_COLON, CT_FUNC_CTOR_VAR },
|
||||
{ CT_CONSTRUCT, CT_TYPE },
|
||||
{ CT_CONTINUE, CT_WORD },
|
||||
{ CT_CS_PROPERTY, CT_BRACE_OPEN },
|
||||
{ CT_DEFAULT, CT_STRING },
|
||||
{ CT_DEFAULT, CT_WORD },
|
||||
{ CT_DELEGATE, CT_BRACE_OPEN },
|
||||
{ CT_D_MODULE, CT_WORD },
|
||||
{ CT_ELLIPSIS, CT_NUMBER },
|
||||
{ CT_ELSE, CT_FOR },
|
||||
{ CT_ELSE, CT_IF },
|
||||
{ CT_ELSE, CT_PAREN_OPEN },
|
||||
{ CT_ELSE, CT_WORD },
|
||||
{ CT_ELSEIF, CT_CONSTEXPR },
|
||||
{ CT_ENUM_CLASS, CT_ATTRIBUTE },
|
||||
{ CT_ENUM_CLASS, CT_TYPE },
|
||||
{ CT_ENUM, CT_ATTRIBUTE },
|
||||
{ CT_ENUM, CT_BIT_COLON },
|
||||
{ CT_ENUM, CT_BRACE_OPEN },
|
||||
{ CT_ENUM, CT_ENUM_CLASS },
|
||||
{ CT_ENUM, CT_FPAREN_OPEN },
|
||||
{ CT_ENUM, CT_FUNCTION },
|
||||
{ CT_ENUM, CT_TYPE },
|
||||
{ CT_ENUM, CT_WORD },
|
||||
{ CT_EXECUTION_CONTEXT, CT_EXECUTION_CONTEXT },
|
||||
{ CT_EXECUTION_CONTEXT, CT_FPAREN_OPEN },
|
||||
{ CT_EXTERN, CT_STRING },
|
||||
{ CT_FPAREN_CLOSE, CT_ASSIGN_FUNC_PROTO },
|
||||
{ CT_FPAREN_CLOSE, CT_ATTRIBUTE },
|
||||
{ CT_FPAREN_CLOSE, CT_CLASS_COLON },
|
||||
{ CT_FPAREN_CLOSE, CT_COND_COLON },
|
||||
{ CT_FPAREN_CLOSE, CT_CONSTR_COLON },
|
||||
{ CT_FPAREN_CLOSE, CT_DEFAULT },
|
||||
{ CT_FPAREN_CLOSE, CT_FUNC_CALL },
|
||||
{ CT_FPAREN_CLOSE, CT_NEG },
|
||||
{ CT_FPAREN_CLOSE, CT_NOT },
|
||||
{ CT_FPAREN_CLOSE, CT_OC_MSG_NAME },
|
||||
{ CT_FPAREN_CLOSE, CT_QUESTION },
|
||||
{ CT_FPAREN_CLOSE, CT_STRING },
|
||||
{ CT_FPAREN_CLOSE, CT_THROW },
|
||||
{ CT_FPAREN_CLOSE, CT_TYPE },
|
||||
{ CT_FPAREN_CLOSE, CT_WHERE_SPEC },
|
||||
{ CT_FPAREN_CLOSE, CT_WORD },
|
||||
{ CT_FRIEND, CT_CLASS },
|
||||
{ CT_FRIEND, CT_STRUCT },
|
||||
{ CT_FRIEND, CT_TYPE },
|
||||
{ CT_FUNCTION, CT_PAREN_OPEN },
|
||||
{ CT_FUNC_VAR, CT_PPAREN_CLOSE },
|
||||
{ CT_GOTO, CT_WORD },
|
||||
{ CT_IF, CT_CONSTEXPR },
|
||||
{ CT_IMPORT, CT_WORD },
|
||||
{ CT_INCDEC_AFTER, CT_DEREF },
|
||||
{ CT_IN, CT_TYPE },
|
||||
{ CT_IN, CT_WORD },
|
||||
{ CT_LABEL_COLON, CT_CS_PROPERTY },
|
||||
{ CT_LABEL_COLON, CT_FUNC_CALL },
|
||||
{ CT_LABEL_COLON, CT_NEW },
|
||||
{ CT_LABEL_COLON, CT_PAREN_OPEN },
|
||||
{ CT_LABEL_COLON, CT_RETURN },
|
||||
{ CT_LABEL_COLON, CT_STRING },
|
||||
{ CT_LABEL_COLON, CT_TYPE },
|
||||
{ CT_LABEL_COLON, CT_WORD },
|
||||
{ CT_LOCK, CT_PAREN_OPEN },
|
||||
{ CT_NAMESPACE, CT_BRACE_OPEN },
|
||||
{ CT_NAMESPACE, CT_TYPE },
|
||||
{ CT_NAMESPACE, CT_WORD },
|
||||
{ CT_NATIVE, CT_TAG },
|
||||
{ CT_NUMBER, CT_CASE_ELLIPSIS },
|
||||
{ CT_NUMBER, CT_CHAR },
|
||||
{ CT_NUMBER, CT_COLON },
|
||||
{ CT_NUMBER, CT_ELLIPSIS },
|
||||
{ CT_NUMBER, CT_OC_MSG_NAME },
|
||||
{ CT_NUMBER, CT_PAREN_OPEN },
|
||||
{ CT_NUMBER, CT_WORD },
|
||||
{ CT_NUMBER_FP, CT_NUMBER },
|
||||
{ CT_NUMBER_FP, CT_OC_MSG_NAME },
|
||||
{ CT_NUMBER_FP, CT_WORD },
|
||||
{ CT_OC_CLASS, CT_CLASS_COLON },
|
||||
{ CT_OC_CLASS, CT_PAREN_OPEN },
|
||||
{ CT_OC_DYNAMIC, CT_WORD },
|
||||
{ CT_OC_IMPL, CT_OC_CLASS },
|
||||
{ CT_OC_INTF, CT_OC_CLASS },
|
||||
{ CT_OC_MSG_DECL, CT_BRACE_OPEN },
|
||||
{ CT_OC_PROTOCOL, CT_OC_CLASS },
|
||||
{ CT_PACKAGE, CT_WORD },
|
||||
{ CT_PAREN_CLOSE, CT_ASM_COLON },
|
||||
{ CT_PAREN_CLOSE, CT_COLON },
|
||||
{ CT_PAREN_CLOSE, CT_COND_COLON },
|
||||
{ CT_PAREN_CLOSE, CT_CS_PROPERTY },
|
||||
{ CT_PAREN_CLOSE, CT_DEREF },
|
||||
{ CT_PAREN_CLOSE, CT_NOT },
|
||||
{ CT_PAREN_CLOSE, CT_NUMBER },
|
||||
{ CT_PAREN_CLOSE, CT_OC_MSG_NAME },
|
||||
{ CT_PAREN_CLOSE, CT_POS },
|
||||
{ CT_PAREN_CLOSE, CT_QUALIFIER },
|
||||
{ CT_PAREN_CLOSE, CT_TYPE },
|
||||
{ CT_PP_DEFINE, CT_MACRO },
|
||||
{ CT_PP_DEFINE, CT_MACRO_FUNC },
|
||||
{ CT_PP_DEFINE, CT_NUMBER },
|
||||
{ CT_PP_DEFINE, CT_PP_IGNORE },
|
||||
{ CT_PP_DEFINED, CT_TYPE },
|
||||
{ CT_PP_DEFINED, CT_WORD },
|
||||
{ CT_PP_ELSE, CT_FUNC_CALL },
|
||||
{ CT_PP_ELSE, CT_NOT },
|
||||
{ CT_PP_ELSE, CT_NUMBER },
|
||||
{ CT_PP_ELSE, CT_PAREN_OPEN },
|
||||
{ CT_PP_ELSE, CT_PP_DEFINED },
|
||||
{ CT_PP_ELSE, CT_WORD },
|
||||
{ CT_PP_EMIT, CT_MACRO },
|
||||
{ CT_PP_ENDIF, CT_WORD },
|
||||
{ CT_PP_ENDREGION, CT_PREPROC_BODY },
|
||||
{ CT_PP_IF, CT_CNG_HASINC },
|
||||
{ CT_PP_IF, CT_FUNC_CALL },
|
||||
{ CT_PP_IF, CT_NOT },
|
||||
{ CT_PP_IF, CT_NUMBER },
|
||||
{ CT_PP_IF, CT_PAREN_OPEN },
|
||||
{ CT_PP_IF, CT_PP_ASM },
|
||||
{ CT_PP_IF, CT_PP_DEFINE },
|
||||
{ CT_PP_IF, CT_PP_DEFINED },
|
||||
{ CT_PP_IF, CT_TYPE },
|
||||
{ CT_PP_IF, CT_WORD },
|
||||
{ CT_PP_INCLUDE, CT_STRING },
|
||||
{ CT_PP_INCLUDE, CT_WORD },
|
||||
{ CT_PP_OTHER, CT_PREPROC_BODY },
|
||||
{ CT_PP_PROPERTY, CT_WORD },
|
||||
{ CT_PP_REGION, CT_PREPROC_BODY },
|
||||
{ CT_PP_UNDEF, CT_TYPE },
|
||||
{ CT_PP_UNDEF, CT_WORD },
|
||||
{ CT_Q_EMIT, CT_FUNC_CALL },
|
||||
{ CT_Q_FOREVER, CT_BRACE_OPEN },
|
||||
{ CT_QUESTION, CT_FUNC_CALL },
|
||||
{ CT_QUESTION, CT_PAREN_OPEN },
|
||||
{ CT_QUESTION, CT_STRING },
|
||||
{ CT_QUESTION, CT_WORD },
|
||||
{ CT_SBOOL, CT_TYPE },
|
||||
{ CT_SCOMPARE, CT_WORD },
|
||||
{ CT_SPAREN_CLOSE, CT_ATTRIBUTE },
|
||||
{ CT_SPAREN_CLOSE, CT_AUTORELEASEPOOL },
|
||||
{ CT_SPAREN_CLOSE, CT_BRACE_OPEN },
|
||||
{ CT_SPAREN_CLOSE, CT_FUNC_CALL },
|
||||
{ CT_SPAREN_CLOSE, CT_WORD },
|
||||
{ CT_SQL_ASSIGN, CT_FUNC_CALL },
|
||||
{ CT_SQL_ASSIGN, CT_WORD },
|
||||
{ CT_SQL_BEGIN, CT_SQL_WORD },
|
||||
{ CT_SQL_END, CT_SQL_WORD },
|
||||
{ CT_SQL_EXEC, CT_SQL_WORD },
|
||||
{ CT_SQL_WORD, CT_COLON },
|
||||
{ CT_SQL_WORD, CT_PAREN_OPEN },
|
||||
{ CT_SQL_WORD, CT_SQL_WORD },
|
||||
{ CT_SQUARE_CLOSE, CT_ATTRIBUTE },
|
||||
{ CT_SQUARE_CLOSE, CT_BRACE_OPEN },
|
||||
{ CT_SQUARE_CLOSE, CT_COLON },
|
||||
{ CT_SQUARE_CLOSE, CT_EXECUTION_CONTEXT },
|
||||
{ CT_SQUARE_CLOSE, CT_OC_MSG_NAME },
|
||||
{ CT_SQUARE_CLOSE, CT_STRING },
|
||||
{ CT_SQUARE_CLOSE, CT_WORD },
|
||||
{ CT_STATE, CT_TYPE },
|
||||
{ CT_STOCK, CT_QUALIFIER },
|
||||
{ CT_STOCK, CT_TAG },
|
||||
{ CT_STRING, CT_ATTRIBUTE },
|
||||
{ CT_STRING, CT_BRACE_OPEN },
|
||||
{ CT_STRING, CT_COLON },
|
||||
{ CT_STRING, CT_CONCAT },
|
||||
{ CT_STRING, CT_OC_MSG_NAME },
|
||||
{ CT_STRING, CT_PAREN_OPEN },
|
||||
{ CT_STRING, CT_STRING },
|
||||
{ CT_STRING, CT_STRUCT },
|
||||
{ CT_STRING, CT_TYPE },
|
||||
{ CT_STRING, CT_WORD },
|
||||
{ CT_STRUCT, CT_BRACE_OPEN },
|
||||
{ CT_STRUCT, CT_CLASS_COLON },
|
||||
{ CT_STRUCT, CT_MACRO_FUNC_CALL },
|
||||
{ CT_STRUCT, CT_TYPE },
|
||||
{ CT_STRUCT, CT_WORD },
|
||||
{ CT_TEMPLATE, CT_CLASS },
|
||||
{ CT_TEMPLATE, CT_TYPE },
|
||||
{ CT_THIS, CT_OC_MSG_NAME },
|
||||
{ CT_THIS, CT_TYPE },
|
||||
{ CT_TSQUARE, CT_BRACE_OPEN },
|
||||
{ CT_TSQUARE, CT_PAREN_OPEN },
|
||||
{ CT_TSQUARE, CT_WORD },
|
||||
{ CT_TYPEDEF, CT_ENUM },
|
||||
{ CT_TYPEDEF, CT_FUNC_TYPE },
|
||||
{ CT_TYPEDEF, CT_PAREN_OPEN },
|
||||
{ CT_TYPEDEF, CT_QUALIFIER },
|
||||
{ CT_TYPEDEF, CT_STRUCT },
|
||||
{ CT_TYPEDEF, CT_TYPE },
|
||||
{ CT_TYPEDEF, CT_TYPENAME },
|
||||
{ CT_TYPEDEF, CT_UNION },
|
||||
{ CT_TYPENAME, CT_ELLIPSIS },
|
||||
{ CT_TYPENAME, CT_WORD },
|
||||
{ CT_UNION, CT_BRACE_OPEN },
|
||||
{ CT_UNION, CT_TYPE },
|
||||
{ CT_UNION, CT_WORD },
|
||||
{ CT_USING, CT_NAMESPACE },
|
||||
{ CT_USING, CT_TYPE },
|
||||
{ CT_USING, CT_WORD },
|
||||
{ CT_USING_STMT, CT_PAREN_OPEN },
|
||||
{ CT_VOLATILE, CT_BRACE_OPEN },
|
||||
{ CT_WHERE_COLON, CT_CS_PROPERTY },
|
||||
{ CT_WHERE_COLON, CT_NEW },
|
||||
{ CT_WHERE_COLON, CT_TYPE },
|
||||
{ CT_WHERE_COLON, CT_WORD },
|
||||
{ CT_WHERE_SPEC, CT_WORD },
|
||||
{ CT_WORD, CT_ATTRIBUTE },
|
||||
{ CT_WORD, CT_BIT_COLON },
|
||||
{ CT_WORD, CT_BRACE_OPEN },
|
||||
{ CT_WORD, CT_CLASS_COLON },
|
||||
{ CT_WORD, CT_COLON },
|
||||
{ CT_WORD, CT_COMMENT_CPP },
|
||||
{ CT_WORD, CT_CONCAT },
|
||||
{ CT_WORD, CT_ELLIPSIS },
|
||||
{ CT_WORD, CT_IN },
|
||||
{ CT_WORD, CT_NEW },
|
||||
{ CT_WORD, CT_NOT },
|
||||
{ CT_WORD, CT_NUMBER },
|
||||
{ CT_WORD, CT_NUMBER_FP },
|
||||
{ CT_WORD, CT_OPERATOR },
|
||||
{ CT_WORD, CT_QUALIFIER },
|
||||
{ CT_WORD, CT_QUESTION },
|
||||
{ CT_WORD, CT_SCOMPARE },
|
||||
{ CT_WORD, CT_SQL_ASSIGN },
|
||||
{ CT_WORD, CT_STRING },
|
||||
{ CT_WORD, CT_STRUCT },
|
||||
{ CT_WORD, CT_TYPE },
|
||||
{ CT_WORD, CT_TYPE_CAST },
|
||||
{ CT_WORD, CT_TYPEDEF },
|
||||
{ CT_WORD, CT_WHERE_COLON },
|
||||
{ CT_WORD, CT_WHERE_SPEC },
|
||||
{ CT_WORD, CT_WORD },
|
||||
// *INDENT-ON*
|
@ -0,0 +1,218 @@
|
||||
/**
|
||||
* @file align_func_proto.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* split from align.cpp
|
||||
* @author Ben Gardner
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#include "align_func_proto.h"
|
||||
|
||||
#include "align_stack.h"
|
||||
#include "align_tools.h"
|
||||
#include "log_rules.h"
|
||||
|
||||
#include <algorithm> // to get max
|
||||
|
||||
constexpr static auto LCURRENT = LALPROTO;
|
||||
|
||||
using namespace uncrustify;
|
||||
|
||||
|
||||
void align_func_proto(size_t span)
|
||||
{
|
||||
LOG_FUNC_ENTRY();
|
||||
|
||||
size_t myspan = span;
|
||||
size_t mythresh = 0;
|
||||
|
||||
log_rule_B("align_func_proto_gap");
|
||||
size_t mygap = options::align_func_proto_gap();
|
||||
|
||||
log_rule_B("align_func_proto_thresh");
|
||||
mythresh = options::align_func_proto_thresh();
|
||||
|
||||
// Issue #2771
|
||||
// we align token-1 and token-2 if:
|
||||
// token-1->level == token-2->level
|
||||
// and
|
||||
// token-1->brace_level == token-2->brace_level
|
||||
// we don't check if token-1 and token-2 are in the same block
|
||||
|
||||
log_rule_B("align_var_def_star_style");
|
||||
size_t mystar_style = options::align_var_def_star_style();
|
||||
|
||||
log_rule_B("align_var_def_amp_style");
|
||||
size_t myamp_style = options::align_var_def_amp_style();
|
||||
|
||||
|
||||
size_t num_of_column = 1;
|
||||
size_t num_of_row = 1;
|
||||
AlignStack *stack_init_value = nullptr;
|
||||
|
||||
|
||||
// Issue #2984
|
||||
vector<vector<AlignStack *> > many_as;
|
||||
// Issue #2771
|
||||
vector<vector<AlignStack *> > many_as_brace;
|
||||
|
||||
// init the vector ...
|
||||
many_as.resize(num_of_column, vector<AlignStack *>(num_of_row, stack_init_value));
|
||||
many_as_brace.resize(num_of_column, vector<AlignStack *>(num_of_row, stack_init_value));
|
||||
|
||||
log_rule_B("align_single_line_brace_gap");
|
||||
size_t mybr_gap = options::align_single_line_brace_gap();
|
||||
|
||||
|
||||
bool look_bro = false;
|
||||
chunk_t *toadd;
|
||||
|
||||
for (chunk_t *pc = chunk_get_head(); pc != nullptr; pc = chunk_get_next(pc))
|
||||
{
|
||||
char copy[1000];
|
||||
LOG_FMT(LAS, "%s(%d): orig_line is %zu, orig_col is %zu, text() is '%s', type is %s, level is %zu, brace_level is %zu\n",
|
||||
__func__, __LINE__, pc->orig_line, pc->orig_col, pc->elided_text(copy),
|
||||
get_token_name(pc->type), pc->level, pc->brace_level);
|
||||
|
||||
// make the vector larger if necessary
|
||||
if ( pc->level >= num_of_column // Issue #2960
|
||||
|| pc->brace_level >= num_of_row)
|
||||
{
|
||||
num_of_column = pc->level + 1;
|
||||
num_of_row = pc->brace_level + 1;
|
||||
|
||||
many_as.resize(num_of_column);
|
||||
many_as_brace.resize(num_of_column);
|
||||
|
||||
for (size_t i = 0; i < num_of_column; ++i)
|
||||
{
|
||||
many_as[i].resize(num_of_row);
|
||||
many_as_brace[i].resize(num_of_row);
|
||||
}
|
||||
}
|
||||
|
||||
if ( chunk_is_newline(pc)
|
||||
&& !pc->flags.test(PCF_IN_FCN_CALL)) // Issue #2831
|
||||
{
|
||||
look_bro = false;
|
||||
AlignStack *stack_at_l_bl = many_as.at(pc->level).at(pc->brace_level);
|
||||
|
||||
if (stack_at_l_bl == nullptr)
|
||||
{
|
||||
// get a Stack
|
||||
stack_at_l_bl = new AlignStack();
|
||||
// start it
|
||||
stack_at_l_bl->Start(myspan, mythresh);
|
||||
stack_at_l_bl->m_gap = mygap;
|
||||
stack_at_l_bl->m_star_style = static_cast<AlignStack::StarStyle>(mystar_style);
|
||||
stack_at_l_bl->m_amp_style = static_cast<AlignStack::StarStyle>(myamp_style);
|
||||
// store
|
||||
many_as.at(pc->level).at(pc->brace_level) = stack_at_l_bl;
|
||||
}
|
||||
stack_at_l_bl->Debug();
|
||||
|
||||
for (size_t idx = 0; idx < num_of_column; idx++)
|
||||
{
|
||||
for (size_t idx_brace = 0; idx_brace < num_of_row; idx_brace++)
|
||||
{
|
||||
stack_at_l_bl = many_as.at(idx).at(idx_brace);
|
||||
|
||||
if (stack_at_l_bl != nullptr)
|
||||
{
|
||||
stack_at_l_bl->NewLines(pc->nl_count);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
AlignStack *stack_at_l_bl_brace = many_as_brace.at(pc->level).at(pc->brace_level);
|
||||
|
||||
if (stack_at_l_bl_brace == nullptr)
|
||||
{
|
||||
// get a Stack
|
||||
stack_at_l_bl_brace = new AlignStack();
|
||||
// start it
|
||||
stack_at_l_bl_brace->Start(myspan, mythresh);
|
||||
stack_at_l_bl_brace->m_gap = mybr_gap;
|
||||
// store
|
||||
many_as_brace.at(pc->level).at(pc->brace_level) = stack_at_l_bl_brace;
|
||||
}
|
||||
stack_at_l_bl_brace->Debug();
|
||||
stack_at_l_bl_brace->NewLines(pc->nl_count);
|
||||
}
|
||||
else if ( chunk_is_token(pc, CT_FUNC_PROTO)
|
||||
|| ( chunk_is_token(pc, CT_FUNC_DEF)
|
||||
&& options::align_single_line_func()))
|
||||
{
|
||||
log_rule_B("align_single_line_func");
|
||||
log_rule_B("align_on_operator");
|
||||
|
||||
if ( get_chunk_parent_type(pc) == CT_OPERATOR
|
||||
&& options::align_on_operator())
|
||||
{
|
||||
toadd = chunk_get_prev_ncnnl(pc);
|
||||
}
|
||||
else
|
||||
{
|
||||
toadd = pc;
|
||||
}
|
||||
chunk_t *tmp = step_back_over_member(toadd);
|
||||
LOG_FMT(LAS, "%s(%d): tmp->text() is '%s', orig_line is %zu, orig_col is %zu, level is %zu, brace_level is %zu\n",
|
||||
__func__, __LINE__, tmp->text(), tmp->orig_line, tmp->orig_col,
|
||||
tmp->level, tmp->brace_level);
|
||||
// test the Stack
|
||||
AlignStack *stack_at_l_bl = many_as.at(pc->level).at(pc->brace_level);
|
||||
|
||||
if (stack_at_l_bl == nullptr)
|
||||
{
|
||||
// get a Stack
|
||||
stack_at_l_bl = new AlignStack();
|
||||
// start it
|
||||
stack_at_l_bl->Start(myspan, mythresh);
|
||||
stack_at_l_bl->m_gap = mygap;
|
||||
stack_at_l_bl->m_star_style = static_cast<AlignStack::StarStyle>(mystar_style);
|
||||
stack_at_l_bl->m_amp_style = static_cast<AlignStack::StarStyle>(myamp_style);
|
||||
// store
|
||||
many_as.at(pc->level).at(pc->brace_level) = stack_at_l_bl;
|
||||
}
|
||||
stack_at_l_bl->Add(tmp);
|
||||
log_rule_B("align_single_line_brace");
|
||||
look_bro = (chunk_is_token(pc, CT_FUNC_DEF))
|
||||
&& options::align_single_line_brace();
|
||||
}
|
||||
else if ( look_bro
|
||||
&& chunk_is_token(pc, CT_BRACE_OPEN)
|
||||
&& pc->flags.test(PCF_ONE_LINER))
|
||||
{
|
||||
AlignStack *stack_at_l_bl_brace = many_as_brace.at(pc->level).at(pc->brace_level);
|
||||
stack_at_l_bl_brace->Add(pc);
|
||||
look_bro = false;
|
||||
}
|
||||
}
|
||||
|
||||
LOG_FMT(LAS, "%s(%d): as\n", __func__, __LINE__);
|
||||
|
||||
// purge
|
||||
for (size_t idx = 0; idx < num_of_column; idx++)
|
||||
{
|
||||
for (size_t idx_brace = 0; idx_brace < num_of_row; idx_brace++)
|
||||
{
|
||||
AlignStack *stack_at_l_bl = many_as.at(idx).at(idx_brace);
|
||||
|
||||
if (stack_at_l_bl != nullptr)
|
||||
{
|
||||
stack_at_l_bl->End();
|
||||
delete stack_at_l_bl;
|
||||
stack_at_l_bl = nullptr;
|
||||
}
|
||||
AlignStack *stack_at_l_bl_brace = many_as_brace.at(idx).at(idx_brace);
|
||||
|
||||
if (stack_at_l_bl_brace != nullptr)
|
||||
{
|
||||
stack_at_l_bl_brace->End();
|
||||
delete stack_at_l_bl_brace;
|
||||
stack_at_l_bl_brace = nullptr;
|
||||
}
|
||||
}
|
||||
}
|
||||
} // align_func_proto
|
@ -1,10 +1,11 @@
|
||||
/**
|
||||
* @file brace_cleanup.h
|
||||
* prototypes for brace_cleanup.c
|
||||
* prototypes for brace_cleanup.cpp
|
||||
*
|
||||
* @author Ben Gardner
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef BRACE_CLEANUP_H_INCLUDED
|
||||
#define BRACE_CLEANUP_H_INCLUDED
|
||||
|
@ -1,10 +1,11 @@
|
||||
/**
|
||||
* @file braces.h
|
||||
* prototypes for braces.c
|
||||
* prototypes for braces.cpp
|
||||
*
|
||||
* @author Ben Gardner
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef BRACES_H_INCLUDED
|
||||
#define BRACES_H_INCLUDED
|
||||
|
@ -0,0 +1,199 @@
|
||||
/**
|
||||
* @file calculate_closing_brace_position.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#include "calculate_closing_brace_position.h"
|
||||
|
||||
#include "chunk_list.h"
|
||||
|
||||
using namespace uncrustify;
|
||||
|
||||
|
||||
chunk_t *calculate_closing_brace_position(const chunk_t *cl_colon, chunk_t *pc)
|
||||
{
|
||||
LOG_FMT(LMCB, "%s(%d): cl_colon->text() is '%s', orig_line %zu, orig_col is %zu, level is %zu\n",
|
||||
__func__, __LINE__, cl_colon->text(), cl_colon->orig_line, cl_colon->orig_col, cl_colon->level);
|
||||
LOG_FMT(LMCB, "%s(%d): pc->text() is '%s', orig_line %zu, orig_col is %zu, level is %zu\n",
|
||||
__func__, __LINE__, pc->text(), pc->orig_line, pc->orig_col, pc->level);
|
||||
// end of block is reached
|
||||
// look back over newline, preprocessor BUT NOT #endif
|
||||
|
||||
// Issue #3058
|
||||
|
||||
// examine going back the tokens: look for a "brace closing" or a "semi colon" until the colon
|
||||
// look back over comment, newline, preprocessor BUT NOT #endif
|
||||
|
||||
size_t check_level = 0;
|
||||
|
||||
if (chunk_is_token(pc, CT_BRACE_CLOSE))
|
||||
{
|
||||
check_level = pc->level + 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
check_level = pc->level;
|
||||
}
|
||||
size_t erst_found = 0;
|
||||
chunk_t *is_brace_close = nullptr;
|
||||
chunk_t *is_semicolon = nullptr;
|
||||
chunk_t *is_comment = nullptr;
|
||||
chunk_t *back = chunk_get_prev_nnl(pc);
|
||||
|
||||
while (back != nullptr)
|
||||
{
|
||||
if (back == cl_colon)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
if (erst_found != 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
if (back->level == check_level)
|
||||
{
|
||||
if ( chunk_is_token(back, CT_BRACE_CLOSE)
|
||||
|| chunk_is_token(back, CT_VBRACE_CLOSE))
|
||||
{
|
||||
// brace_close found
|
||||
is_brace_close = back;
|
||||
LOG_FMT(LMCB, "%s(%d): BRACE_CLOSE: line is %zu, col is %zu, level is %zu\n",
|
||||
__func__, __LINE__, is_brace_close->orig_line, is_brace_close->orig_col, is_brace_close->level);
|
||||
erst_found = 3;
|
||||
}
|
||||
|
||||
if (chunk_is_token(back, CT_SEMICOLON))
|
||||
{
|
||||
// semicolon found
|
||||
is_semicolon = back;
|
||||
LOG_FMT(LMCB, "%s(%d): SEMICOLON: line is %zu, col is %zu, level is %zu\n",
|
||||
__func__, __LINE__, is_semicolon->orig_line, is_semicolon->orig_col, is_semicolon->level);
|
||||
erst_found = 4;
|
||||
}
|
||||
|
||||
if (chunk_is_comment(back))
|
||||
{
|
||||
// comment found
|
||||
is_comment = back;
|
||||
LOG_FMT(LMCB, "%s(%d): COMMENT: line is %zu, col is %zu, level is %zu\n",
|
||||
__func__, __LINE__, back->orig_line, back->orig_col, back->level);
|
||||
}
|
||||
}
|
||||
back = chunk_get_prev(back);
|
||||
}
|
||||
LOG_FMT(LMCB, "%s(%d): erst_found is %zu\n",
|
||||
__func__, __LINE__, erst_found);
|
||||
chunk_t *last = nullptr;
|
||||
|
||||
if ( erst_found == 3
|
||||
|| erst_found == 4)
|
||||
{
|
||||
if (is_comment != nullptr)
|
||||
{
|
||||
chunk_t *second = nullptr;
|
||||
|
||||
if (erst_found == 3)
|
||||
{
|
||||
second = is_brace_close;
|
||||
}
|
||||
else
|
||||
{
|
||||
// erst_found == 4
|
||||
second = is_semicolon;
|
||||
}
|
||||
|
||||
if (second != nullptr)
|
||||
{
|
||||
if (is_comment->orig_line == second->orig_line)
|
||||
{
|
||||
last = is_comment;
|
||||
|
||||
if (cl_colon->orig_line == is_comment->orig_line)
|
||||
{
|
||||
last = chunk_get_next(is_comment);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last = chunk_get_prev_ncnnl(pc);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
LOG_FMT(LMCB, "\n\n%s(%d):\n", __func__, __LINE__);
|
||||
fprintf(stderr, "FATAL: second is nullptr\n");
|
||||
fprintf(stderr, "Please make a report.\n");
|
||||
exit(EX_SOFTWARE);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
last = chunk_get_prev_ncnnl(pc);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
LOG_FMT(LMCB, "\n\n%s(%d):\n", __func__, __LINE__);
|
||||
fprintf(stderr, "FATAL: erst_found is not 3 or 4\n");
|
||||
fprintf(stderr, "Please make a report.\n");
|
||||
exit(EX_SOFTWARE);
|
||||
}
|
||||
|
||||
if (chunk_is_token(last, CT_COMMENT_CPP)) // Issue #3058
|
||||
{
|
||||
last = chunk_get_next(last);
|
||||
}
|
||||
LOG_FMT(LMCB, "%s(%d): last->text() is '%s', orig_line %zu, orig_col is %zu\n",
|
||||
__func__, __LINE__, last->text(), last->orig_line, last->orig_col);
|
||||
|
||||
if (chunk_is_preproc(last))
|
||||
{
|
||||
// we have a preprocessor token
|
||||
while (last != nullptr)
|
||||
{
|
||||
LOG_FMT(LMCB, "%s(%d): text() is '%s', orig_line %zu, orig_col is %zu\n",
|
||||
__func__, __LINE__, last->text(), last->orig_line, last->orig_col);
|
||||
|
||||
if (chunk_is_token(last, CT_PP_ENDIF))
|
||||
{
|
||||
// look for the parent
|
||||
chunk_t *parent_last = last->parent;
|
||||
// compare the positions
|
||||
int comp = chunk_compare_position(parent_last, cl_colon);
|
||||
LOG_FMT(LMCB, "%s(%d): comp is %d\n",
|
||||
__func__, __LINE__, comp);
|
||||
|
||||
if (comp == -1)
|
||||
{
|
||||
// cl_colon is after parent_last ==>
|
||||
// the closing brace will be set before #endif
|
||||
chunk_t *pp_start = chunk_get_pp_start(last);
|
||||
last = chunk_get_prev_nnl(pp_start);
|
||||
LOG_FMT(LMCB, "%s(%d): text() is '%s', orig_line %zu, orig_col is %zu\n",
|
||||
__func__, __LINE__, last->text(), last->orig_line, last->orig_col);
|
||||
}
|
||||
else if (comp == 1)
|
||||
{
|
||||
// cl_colon is before parent_last ==>
|
||||
// the closing brace will be set after #endif
|
||||
LOG_FMT(LMCB, "%s(%d): text() is '%s', orig_line %zu, orig_col is %zu\n",
|
||||
__func__, __LINE__, last->text(), last->orig_line, last->orig_col);
|
||||
}
|
||||
break;
|
||||
}
|
||||
last = chunk_get_prev_ncnnl(last);
|
||||
LOG_FMT(LMCB, "%s(%d): text() is '%s', orig_line %zu, orig_col is %zu\n",
|
||||
__func__, __LINE__, last->text(), last->orig_line, last->orig_col);
|
||||
|
||||
if (!chunk_is_preproc(last))
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return(last);
|
||||
} // calculate_closing_brace_position
|
@ -0,0 +1,18 @@
|
||||
/**
|
||||
* @file calculate_closing_brace_position.h
|
||||
* prototype for calculate_closing_brace_position.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef CALCULATE_CLOSING_BRACE_POSITION_H_INCLUDED
|
||||
#define CALCULATE_CLOSING_BRACE_POSITION_H_INCLUDED
|
||||
|
||||
#include "uncrustify_types.h"
|
||||
|
||||
|
||||
chunk_t *calculate_closing_brace_position(const chunk_t *cl_colon, chunk_t *pc);
|
||||
|
||||
|
||||
#endif /* CALCULATE_CLOSING_BRACE_POSITION_H_INCLUDED */
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,324 @@
|
||||
/**
|
||||
* @file combine_skip.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
* extract from combine.cpp
|
||||
*/
|
||||
|
||||
#include "combine_skip.h"
|
||||
|
||||
#include "combine_tools.h"
|
||||
|
||||
|
||||
chunk_t *skip_align(chunk_t *start)
|
||||
{
|
||||
chunk_t *pc = start;
|
||||
|
||||
if (chunk_is_token(pc, CT_ALIGN))
|
||||
{
|
||||
pc = chunk_get_next_ncnnl(pc);
|
||||
|
||||
if (chunk_is_token(pc, CT_PAREN_OPEN))
|
||||
{
|
||||
pc = chunk_get_next_type(pc, CT_PAREN_CLOSE, pc->level);
|
||||
pc = chunk_get_next_ncnnl(pc);
|
||||
|
||||
if (chunk_is_token(pc, CT_COLON))
|
||||
{
|
||||
pc = chunk_get_next_ncnnl(pc);
|
||||
}
|
||||
}
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_expression(chunk_t *pc)
|
||||
{
|
||||
return(chunk_get_next_ncnnl(skip_to_expression_end(pc)));
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_expression_rev(chunk_t *pc)
|
||||
{
|
||||
return(chunk_get_prev_ncnnlni(skip_to_expression_start(pc)));
|
||||
}
|
||||
|
||||
|
||||
static chunk_t *skip_to_expression_edge(chunk_t *pc, chunk_t *(*chunk_get_next)(chunk_t *cur, scope_e scope))
|
||||
{
|
||||
chunk_t *prev = pc;
|
||||
|
||||
if ( prev != nullptr
|
||||
&& chunk_get_next != nullptr)
|
||||
{
|
||||
std::size_t level = prev->level;
|
||||
chunk_t *next = prev;
|
||||
std::size_t template_nest = get_cpp_template_angle_nest_level(prev);
|
||||
|
||||
while ( next != nullptr
|
||||
&& next->level >= level)
|
||||
{
|
||||
/**
|
||||
* if we encounter a comma or semicolon at the level of the starting chunk,
|
||||
* return the current chunk
|
||||
*/
|
||||
if ( next->level == level
|
||||
&& ( chunk_is_token(next, CT_COMMA)
|
||||
|| chunk_is_semicolon(next)))
|
||||
{
|
||||
break;
|
||||
}
|
||||
/**
|
||||
* check the template nest level; if the current chunk's nest level
|
||||
* is less than that of the starting chunk, return the current chunk
|
||||
*/
|
||||
auto next_template_nest = get_cpp_template_angle_nest_level(next);
|
||||
|
||||
if (template_nest > next_template_nest)
|
||||
{
|
||||
break;
|
||||
}
|
||||
prev = next;
|
||||
next = (*chunk_get_next)(next, scope_e::PREPROC);
|
||||
}
|
||||
}
|
||||
return(prev);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_to_expression_end(chunk_t *pc)
|
||||
{
|
||||
return(skip_to_expression_edge(pc, chunk_get_next_ncnnl));
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_to_expression_start(chunk_t *pc)
|
||||
{
|
||||
return(skip_to_expression_edge(pc, chunk_get_prev_ncnnlni));
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_to_next_statement(chunk_t *pc)
|
||||
{
|
||||
while ( pc != nullptr
|
||||
&& !chunk_is_semicolon(pc)
|
||||
&& chunk_is_not_token(pc, CT_BRACE_OPEN)
|
||||
&& chunk_is_not_token(pc, CT_BRACE_CLOSE))
|
||||
{
|
||||
pc = chunk_get_next_ncnnl(pc);
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_parent_types(chunk_t *colon)
|
||||
{
|
||||
auto pc = chunk_get_next_ncnnlnp(colon);
|
||||
|
||||
while (pc)
|
||||
{
|
||||
// Skip access specifier
|
||||
if (chunk_is_token(pc, CT_ACCESS))
|
||||
{
|
||||
pc = chunk_get_next_ncnnlnp(pc);
|
||||
continue;
|
||||
}
|
||||
|
||||
// Check for a type name
|
||||
if (!( chunk_is_token(pc, CT_WORD)
|
||||
|| chunk_is_token(pc, CT_TYPE)))
|
||||
{
|
||||
LOG_FMT(LPCU,
|
||||
"%s is confused; expected a word at %zu:%zu "
|
||||
"following type list at %zu:%zu\n", __func__,
|
||||
colon->orig_line, colon->orig_col,
|
||||
pc->orig_line, pc->orig_col);
|
||||
return(colon);
|
||||
}
|
||||
// Get next token
|
||||
auto next = skip_template_next(chunk_get_next_ncnnlnp(pc));
|
||||
|
||||
if ( chunk_is_token(next, CT_DC_MEMBER)
|
||||
|| chunk_is_token(next, CT_COMMA))
|
||||
{
|
||||
pc = chunk_get_next_ncnnlnp(next);
|
||||
}
|
||||
else if (next)
|
||||
{
|
||||
LOG_FMT(LPCU, "%s -> %zu:%zu ('%s')\n", __func__,
|
||||
next->orig_line, next->orig_col, next->text());
|
||||
return(next);
|
||||
}
|
||||
else
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
LOG_FMT(LPCU, "%s: did not find end of type list (start was %zu:%zu)\n",
|
||||
__func__, colon->orig_line, colon->orig_col);
|
||||
return(colon);
|
||||
} // skip_parent_types
|
||||
|
||||
|
||||
chunk_t *skip_template_prev(chunk_t *ang_close)
|
||||
{
|
||||
if (chunk_is_token(ang_close, CT_ANGLE_CLOSE))
|
||||
{
|
||||
chunk_t *pc = chunk_get_prev_type(ang_close, CT_ANGLE_OPEN, ang_close->level);
|
||||
return(chunk_get_prev_ncnnlni(pc)); // Issue #2279
|
||||
}
|
||||
return(ang_close);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_tsquare_next(chunk_t *ary_def)
|
||||
{
|
||||
if ( chunk_is_token(ary_def, CT_SQUARE_OPEN)
|
||||
|| chunk_is_token(ary_def, CT_TSQUARE))
|
||||
{
|
||||
return(chunk_get_next_nisq(ary_def));
|
||||
}
|
||||
return(ary_def);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_attribute(chunk_t *attr)
|
||||
{
|
||||
chunk_t *pc = attr;
|
||||
|
||||
while (chunk_is_token(pc, CT_ATTRIBUTE))
|
||||
{
|
||||
pc = chunk_get_next_ncnnl(pc);
|
||||
|
||||
if (chunk_is_token(pc, CT_FPAREN_OPEN))
|
||||
{
|
||||
pc = chunk_get_next_type(pc, CT_FPAREN_CLOSE, pc->level);
|
||||
}
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_attribute_next(chunk_t *attr)
|
||||
{
|
||||
chunk_t *next = skip_attribute(attr);
|
||||
|
||||
if ( next != attr
|
||||
&& chunk_is_token(next, CT_FPAREN_CLOSE))
|
||||
{
|
||||
attr = chunk_get_next_ncnnl(next);
|
||||
}
|
||||
return(attr);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_attribute_prev(chunk_t *fp_close)
|
||||
{
|
||||
chunk_t *pc = fp_close;
|
||||
|
||||
while (true)
|
||||
{
|
||||
if ( chunk_is_token(pc, CT_FPAREN_CLOSE)
|
||||
&& get_chunk_parent_type(pc) == CT_ATTRIBUTE)
|
||||
{
|
||||
pc = chunk_get_prev_type(pc, CT_ATTRIBUTE, pc->level);
|
||||
}
|
||||
else if (chunk_is_not_token(pc, CT_ATTRIBUTE))
|
||||
{
|
||||
break;
|
||||
}
|
||||
pc = chunk_get_prev_ncnnlni(pc); // Issue #2279
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_declspec(chunk_t *pc)
|
||||
{
|
||||
if (chunk_is_token(pc, CT_DECLSPEC))
|
||||
{
|
||||
pc = chunk_get_next_ncnnl(pc);
|
||||
|
||||
if (chunk_is_token(pc, CT_PAREN_OPEN))
|
||||
{
|
||||
pc = chunk_skip_to_match(pc);
|
||||
}
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_declspec_next(chunk_t *pc)
|
||||
{
|
||||
chunk_t *next = skip_declspec(pc);
|
||||
|
||||
if ( next != pc
|
||||
&& chunk_is_token(next, CT_PAREN_CLOSE))
|
||||
{
|
||||
pc = chunk_get_next_ncnnl(next);
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_declspec_prev(chunk_t *pc)
|
||||
{
|
||||
if ( chunk_is_token(pc, CT_PAREN_CLOSE)
|
||||
&& get_chunk_parent_type(pc) == CT_DECLSPEC)
|
||||
{
|
||||
pc = chunk_skip_to_match_rev(pc);
|
||||
pc = chunk_get_prev_ncnnlni(pc);
|
||||
|
||||
if (chunk_is_token(pc, CT_DECLSPEC))
|
||||
{
|
||||
pc = chunk_get_prev_ncnnlni(pc);
|
||||
}
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_matching_brace_bracket_paren_next(chunk_t *pc)
|
||||
{
|
||||
if ( chunk_is_token(pc, CT_BRACE_OPEN)
|
||||
|| chunk_is_token(pc, CT_PAREN_OPEN)
|
||||
|| chunk_is_token(pc, CT_SQUARE_OPEN))
|
||||
{
|
||||
pc = chunk_skip_to_match(pc);
|
||||
|
||||
if (pc != nullptr)
|
||||
{
|
||||
/**
|
||||
* a matching brace, square bracket, or paren was found;
|
||||
* retrieve the subsequent chunk
|
||||
*/
|
||||
|
||||
pc = chunk_get_next_ncnnl(pc);
|
||||
}
|
||||
}
|
||||
return(pc);
|
||||
}
|
||||
|
||||
|
||||
chunk_t *skip_to_chunk_before_matching_brace_bracket_paren_rev(chunk_t *pc)
|
||||
{
|
||||
if ( chunk_is_token(pc, CT_BRACE_CLOSE)
|
||||
|| chunk_is_token(pc, CT_PAREN_CLOSE)
|
||||
|| chunk_is_token(pc, CT_SQUARE_CLOSE))
|
||||
{
|
||||
pc = chunk_skip_to_match_rev(pc);
|
||||
|
||||
if (pc != nullptr)
|
||||
{
|
||||
/**
|
||||
* a matching brace, square bracket, or paren was found;
|
||||
* retrieve the preceding chunk
|
||||
*/
|
||||
|
||||
pc = chunk_get_prev_ncnnlni(pc);
|
||||
}
|
||||
}
|
||||
return(pc);
|
||||
}
|
@ -0,0 +1,169 @@
|
||||
/**
|
||||
* @file combine_skip.h
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
* extract from combine.cpp
|
||||
*/
|
||||
|
||||
#ifndef COMBINE_SKIP_H_INCLUDED
|
||||
#define COMBINE_SKIP_H_INCLUDED
|
||||
|
||||
#include "chunk_list.h"
|
||||
|
||||
|
||||
/**
|
||||
* Skips the D 'align()' statement and the colon, if present.
|
||||
* align(2) int foo; -- returns 'int'
|
||||
* align(4): -- returns 'int'
|
||||
* int bar;
|
||||
*/
|
||||
chunk_t *skip_align(chunk_t *start);
|
||||
|
||||
|
||||
/**
|
||||
* Skips chunks in the forward direction and attempts to find the
|
||||
* chunk associated with the end of the current expression; returns
|
||||
* the first chunk to satisfy one of the following:
|
||||
* 1) Chunk is a comma or semicolon at the level of the starting chunk
|
||||
* 2) Preceding chunk is at higher template nest level relative to the
|
||||
* current chunk under test
|
||||
*/
|
||||
chunk_t *skip_expression(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Skips chunks in the reverse direction and attempts to find the
|
||||
* chunk associated with the start of the current expression; returns
|
||||
* the first chunk to satisfy one of the following:
|
||||
* 1) Chunk is a comma or semicolon at the level of the starting chunk
|
||||
* 2) Preceding chunk is at lower template nest level relative to the
|
||||
* current chunk under test
|
||||
*/
|
||||
chunk_t *skip_expression_rev(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Skips chunks in the forward direction and attempts to find the
|
||||
* chunk associated with the end of the current expression; specifically,
|
||||
* the function returns that which immediately precedes a chunk
|
||||
* satisfying one of the following:
|
||||
* 1) Next chunk is a comma or semicolon at the level of the starting chunk
|
||||
* 2) Preceding chunk is at a higher template nest level relative to the
|
||||
* subsequent chunk
|
||||
*/
|
||||
chunk_t *skip_to_expression_end(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Skips chunks in the reverse direction and attempts to find the chunk
|
||||
* associated with the start of the current expression; specifically,
|
||||
* the function returns that which immediately follows a chunk
|
||||
* satisfying one of the following:
|
||||
* 1) Prior chunk is a comma or semicolon at the level of the starting chunk
|
||||
* 2) Preceding chunk is at a lower template nest level relative to the
|
||||
* subsequent chunk
|
||||
*/
|
||||
chunk_t *skip_to_expression_start(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Skips the list of class/struct parent types.
|
||||
*/
|
||||
chunk_t *skip_parent_types(chunk_t *colon);
|
||||
|
||||
|
||||
/**
|
||||
* Skips over the rest of the template if ang_open is indeed a CT_ANGLE_OPEN.
|
||||
* Points to the chunk after the CT_ANGLE_CLOSE.
|
||||
* If the chunk isn't an CT_ANGLE_OPEN, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_template_next(chunk_t *ang_open);
|
||||
|
||||
|
||||
/**
|
||||
* Skips over the rest of the template if ang_close is indeed a CT_ANGLE_CLOSE.
|
||||
* Points to the chunk before the CT_ANGLE_OPEN
|
||||
* If the chunk isn't an CT_ANGLE_CLOSE, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_template_prev(chunk_t *ang_close);
|
||||
|
||||
|
||||
//! Skips to the start of the next statement.
|
||||
chunk_t *skip_to_next_statement(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* Skips the rest of the array definitions if ary_def is indeed a
|
||||
* CT_TSQUARE or CT_SQUARE_OPEN
|
||||
*/
|
||||
chunk_t *skip_tsquare_next(chunk_t *ary_def);
|
||||
|
||||
|
||||
/**
|
||||
* If pc is CT_ATTRIBUTE, then skip it and everything preceding the closing
|
||||
* paren; return the chunk marked CT_FPAREN_CLOSE
|
||||
* If the chunk isn't a CT_ATTRIBUTE, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_attribute(chunk_t *attr);
|
||||
|
||||
|
||||
/**
|
||||
* If attr is CT_ATTRIBUTE, then skip it and the parens and return the chunk
|
||||
* after the CT_FPAREN_CLOSE.
|
||||
* If the chunk isn't an CT_ATTRIBUTE, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_attribute_next(chunk_t *attr);
|
||||
|
||||
|
||||
/**
|
||||
* If fp_close is a CT_FPAREN_CLOSE with a parent of CT_ATTRIBUTE, then skip it
|
||||
* and the '__attribute__' thingy and return the chunk before CT_ATTRIBUTE.
|
||||
* Otherwise return fp_close.
|
||||
*/
|
||||
chunk_t *skip_attribute_prev(chunk_t *fp_close);
|
||||
|
||||
|
||||
/**
|
||||
* If pc is CT_DECLSPEC, then skip it and everything preceding the closing
|
||||
* paren; return the chunk marked CT_FPAREN_CLOSE
|
||||
* If the chunk isn't a CT_DECLSPEC, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_declspec(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* If pc is CT_DECLSPEC, then skip it and the parens and return the chunk
|
||||
* after the CT_FPAREN_CLOSE.
|
||||
* If the chunk isn't a CT_DECLSPEC, then it is returned.
|
||||
*/
|
||||
chunk_t *skip_declspec_next(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* If pc is a CT_FPAREN_CLOSE with a parent of CT_DECLSPEC, then skip it
|
||||
* and the '__declspec' keyword and return the chunk before CT_DECLSPEC.
|
||||
* Otherwise return pc.
|
||||
*/
|
||||
chunk_t *skip_declspec_prev(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* If pc is a CT_BRACE_OPEN, CT_PAREN_OPEN or CT_SQUARE_OPEN, then skip
|
||||
* forward to the next non-comment/non-newline chunk following the matching
|
||||
* CT_BRACE_CLOSE, CT_PAREN_CLOSE or CT_SQUARE_CLOSE; if pc is none of these
|
||||
* upon calling this function, then pc is returned.
|
||||
*/
|
||||
chunk_t *skip_matching_brace_bracket_paren_next(chunk_t *pc);
|
||||
|
||||
|
||||
/**
|
||||
* If pc is a CT_BRACE_CLOSE, CT_PAREN_CLOSE or CT_SQUARE_CLOSE, then skip
|
||||
* in reverse to the first non-comment/non-newline chunk preceding the matching
|
||||
* CT_BRACE_OPEN, CT_PAREN_OPEN or CT_SQUARE_OPEN; if pc is none of these upon
|
||||
* calling this function, then pc is returned.
|
||||
*/
|
||||
chunk_t *skip_to_chunk_before_matching_brace_bracket_paren_rev(chunk_t *pc);
|
||||
|
||||
|
||||
#endif /* COMBINE_SKIP_H_INCLUDED */
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,138 @@
|
||||
/**
|
||||
* @file log_levels.h
|
||||
*
|
||||
* Enum for log levels.
|
||||
* Use these for the log severities in LOG_FMT(), etc.
|
||||
*
|
||||
* @author Ben Gardner
|
||||
* @author Guy Maurel October 2015- 2021
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef LOG_LEVELS_H_INCLUDED
|
||||
#define LOG_LEVELS_H_INCLUDED
|
||||
|
||||
/**
|
||||
* list of available log levels
|
||||
*
|
||||
* The user defines which log level is active using the
|
||||
* -L or -log option.
|
||||
* use -L A to set all the levels
|
||||
* All messages which have a level that is active will be stored to the log
|
||||
* file.
|
||||
* All other log messages will be discarded.
|
||||
* Different parts of the software use different log levels.
|
||||
* This allows to log only operations of a specific operation.
|
||||
* This eases debugging.
|
||||
* To get all log messages use the option -La
|
||||
* By default only system messages (level=LSYS) are logged.
|
||||
*/
|
||||
enum log_sev_t
|
||||
{
|
||||
LSYS = 0, //! system messages
|
||||
LERR = 1, //! error messages
|
||||
LWARN = 2, //! warnings
|
||||
LNOTE = 3, //! user notifications
|
||||
LINFO = 4, //! user informations
|
||||
LDATA = 5, //! data logging
|
||||
|
||||
LFILELIST = 8, //! Files in the file list file
|
||||
LLINEENDS = 9, //! Show which line endings are used
|
||||
LCASTS = 10, //! align casts
|
||||
LALBR = 11, //! align braces
|
||||
LALTD = 12, //! Align Typedef
|
||||
LALPP = 13, //! align #define
|
||||
LALPROTO = 14, //! align prototype
|
||||
LALNLC = 15, //! align backslash-newline
|
||||
LALTC = 16, //! align trailing comments
|
||||
LALADD = 17, //! align add
|
||||
LALASS = 18, //! align assign
|
||||
LFVD = 19, //! fix_var_def
|
||||
LFVD2 = 20, //! fix_var_def-2
|
||||
LINDENT = 21, //! indent_text
|
||||
LINDENT2 = 22, //! indent_text tab level
|
||||
LINDPSE = 23, //! indent_text stack
|
||||
LINDPC = 24, //! indent play-by-play
|
||||
LNEWLINE = 25, //! newlines
|
||||
LPF = 26, //! Parse Frame
|
||||
LSTMT = 27, //! Marking statements/expressions
|
||||
LTOK = 28, //! Tokenize
|
||||
LALRC = 29, //! align right comment
|
||||
LCMTIND = 30, //! Comment Indent
|
||||
LINDLINE = 31, //! indent line
|
||||
LSIB = 32, //! Scan IB
|
||||
LRETURN = 33, //! add/remove parens for return
|
||||
LBRDEL = 34, //! brace removal
|
||||
LFCN = 35, //! function detection
|
||||
LFCNP = 36, //! function parameters
|
||||
LPCU = 37, //! parse cleanup
|
||||
LDYNKW = 38, //! dynamic keywords
|
||||
LOUTIND = 39, //! output indent
|
||||
LBCSAFTER = 40, //! Brace cleanup stack - after each token
|
||||
LBCSPOP = 41, //! Brace cleanup stack - log pops
|
||||
LBCSPUSH = 42, //! Brace cleanup stack - log push
|
||||
LBCSSWAP = 43, //! Brace cleanup stack - log swaps
|
||||
LFTOR = 44, //! Class Ctor or Dtor
|
||||
LAS = 45, //! align_stack
|
||||
LPPIS = 46, //! Preprocessor Indent and Space
|
||||
LTYPEDEF = 47, //! Typedef and function types
|
||||
LVARDEF = 48, //! Variable def marking
|
||||
LDEFVAL = 49, //! define values
|
||||
LPVSEMI = 50, //! Pawn: virtual semicolons
|
||||
LPFUNC = 51, //! Pawn: function recognition
|
||||
LSPLIT = 52, //! Line splitting
|
||||
LFTYPE = 53, //! Function type detection
|
||||
LTEMPL = 54, //! Template detection
|
||||
LPARADD = 55, //! adding parens in if/while
|
||||
LPARADD2 = 56, //! adding parens in if/while - details
|
||||
LBLANKD = 57, //! blank line details
|
||||
LTEMPFUNC = 58, //! Template function detection
|
||||
LSCANSEMI = 59, //! scan semicolon removal
|
||||
LDELSEMI = 60, //! Removing semicolons
|
||||
LFPARAM = 61, //! Testing for a full parameter
|
||||
LNL1LINE = 62, //! NL check for 1 liners
|
||||
LPFCHK = 63, //! Parse Frame check function call
|
||||
LAVDB = 64, //! align var def braces
|
||||
LSORT = 65, //! Sorting
|
||||
LSPACE = 66, //! Space
|
||||
LALIGN = 67, //! align
|
||||
LALAGAIN = 68, //! align again
|
||||
LOPERATOR = 69, //! operator
|
||||
LASFCP = 70, //! Align Same Function Call Params
|
||||
LINDLINED = 71, //! indent line details
|
||||
LBCTRL = 72, //! beautifier control
|
||||
LRMRETURN = 73, //! remove 'return;'
|
||||
LPPIF = 74, //! #if/#else/#endif pair processing
|
||||
LMCB = 75, //! mod_case_brace
|
||||
LBRCH = 76, //! if brace chain
|
||||
LFCNR = 77, //! function return type
|
||||
LOCCLASS = 78, //! OC Class stuff
|
||||
LOCMSG = 79, //! OC Message stuff
|
||||
LBLANK = 80, //! Blank Lines
|
||||
LOBJCWORD = 81, //! Convert keyword to CT_WORD in certain circumstances
|
||||
LCHANGE = 82, //! something changed
|
||||
LCONTTEXT = 83, //! comment cont_text set
|
||||
LANNOT = 84, //! Java annotation
|
||||
LOCBLK = 85, //! OC Block stuff
|
||||
LFLPAREN = 86, //! Flag paren
|
||||
LOCMSGD = 87, //! OC Message declaration
|
||||
LINDENTAG = 88, //! indent again
|
||||
LNFD = 89, //! newline-function-def
|
||||
LJDBI = 90, //! Java Double Brace Init
|
||||
LSETPAR = 91, //! set_chunk_parent()
|
||||
LSETTYP = 92, //! set_chunk_type()
|
||||
LSETFLG = 93, //! set_chunk_flags()
|
||||
LNLFUNCT = 94, //! newlines before function
|
||||
LCHUNK = 95, //! Add or delete chunk
|
||||
LBC = 96, //! brace cleanup
|
||||
LCOMBINE = 97, //! combine
|
||||
LGUY98 = 98, //! for guy-test
|
||||
LGUY = 99, //! for guy-test
|
||||
LBR = 100, //! braces
|
||||
LOUTPUT = 101, //! output
|
||||
LUNC = 102, //! rules used in uncrustify.cpp
|
||||
LQT = 103, //! load/save options for Qt
|
||||
LOTHER = 255, //! stuff that doesn't neatly fit any other category
|
||||
};
|
||||
|
||||
#endif /* LOG_LEVELS_H_INCLUDED */
|
@ -0,0 +1,80 @@
|
||||
/**
|
||||
* @file log_rules.cpp
|
||||
* is an extract from space.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#include "log_rules.h"
|
||||
|
||||
#include "unc_tools.h"
|
||||
|
||||
|
||||
void log_rule2(const char *func, size_t line, const char *rule, chunk_t *first, chunk_t *second)
|
||||
{
|
||||
LOG_FUNC_ENTRY();
|
||||
|
||||
if (second->type != CT_NEWLINE)
|
||||
{
|
||||
LOG_FMT(LSPACE, "%s(%zu): first->orig_line is %zu, first->orig_col is %zu, first->text() is '%s', [%s/%s] <===>\n",
|
||||
func, line, first->orig_line, first->orig_col, first->text(),
|
||||
get_token_name(first->type), get_token_name(get_chunk_parent_type(first)));
|
||||
LOG_FMT(LSPACE, " second->orig_line is %zu, second->orig_col is %zu, second->text() is '%s', [%s/%s] :",
|
||||
second->orig_line, second->orig_col, second->text(),
|
||||
get_token_name(second->type), get_token_name(get_chunk_parent_type(second)));
|
||||
LOG_FMT(LSPACE, " rule %s[line %zu]\n",
|
||||
rule, line);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#ifdef SUPER_LOG
|
||||
|
||||
|
||||
void log_rule3(log_sev_t sev, const char *func, size_t line, const char *rule)
|
||||
#else
|
||||
|
||||
|
||||
void log_rule3(log_sev_t sev, const char *func, const char *rule)
|
||||
#endif
|
||||
{
|
||||
// some Windows platforms provide a qualified function name ("ABC::XYZ::function_Name")
|
||||
// as __func__; call get_unqualified_func_name() to return an unqualified function name
|
||||
|
||||
func = get_unqualified_func_name(func);
|
||||
|
||||
#ifdef SUPER_LOG
|
||||
LOG_FMT(sev, "log_rule(%s:%zu): rule is '%s'\n", func, line, rule);
|
||||
#else
|
||||
LOG_FMT(sev, "log_rule(%s): rule is '%s'\n", func, rule);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
void log_rule4(const char *rule, chunk_t *first)
|
||||
{
|
||||
if (cpd.html_file == nullptr)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (first->tracking == nullptr)
|
||||
{
|
||||
first->tracking = new track_list;
|
||||
first->tracking->reserve(3);
|
||||
}
|
||||
// copy the rule
|
||||
size_t length = strlen(rule) + 1;
|
||||
char *r = (char *)malloc(length);
|
||||
|
||||
strcpy(r, rule);
|
||||
size_t a_number = get_A_Number();
|
||||
Track_nr A = make_pair(a_number, r);
|
||||
|
||||
first->tracking->push_back(A);
|
||||
size_t sizeOfTrack = first->tracking->size();
|
||||
|
||||
LOG_FMT(LSPACE, "log_rule4(%d): rule is '%s', after '%s'', at line %zu, tracking number is %zu, size is %zu\n",
|
||||
__LINE__, rule, first->text(), first->orig_line, a_number, sizeOfTrack);
|
||||
}
|
@ -0,0 +1,63 @@
|
||||
/**
|
||||
* @file log_rules.h
|
||||
* prototypes for log_rules.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef LOG_RULES_H_INCLUDED
|
||||
#define LOG_RULES_H_INCLUDED
|
||||
|
||||
#include "chunk_list.h"
|
||||
#include "uncrustify.h"
|
||||
|
||||
using namespace uncrustify;
|
||||
|
||||
#if defined DEBUG
|
||||
#define log_rule(rule) \
|
||||
do { \
|
||||
log_rule2(__func__, __LINE__, (rule), first, second); \
|
||||
log_rule4((rule), first); \
|
||||
\
|
||||
} while (0)
|
||||
#else
|
||||
#define log_rule(rule) \
|
||||
do { \
|
||||
log_rule2(__func__, __LINE__, (rule), first, second); \
|
||||
} while (0)
|
||||
#endif
|
||||
|
||||
#define log_rule_short(rule) \
|
||||
do { \
|
||||
log_rule2(__func__, __LINE__, (rule), first, second); \
|
||||
} while (0)
|
||||
|
||||
// if you need more debug informations, remove the comment at the next line
|
||||
#define SUPER_LOG 1
|
||||
#ifdef SUPER_LOG
|
||||
#define log_rule_B(rule) \
|
||||
do { \
|
||||
log_rule3(LCURRENT, __func__, __LINE__, (rule)); \
|
||||
} while (0)
|
||||
#else
|
||||
#define log_rule_B(rule) \
|
||||
do { \
|
||||
log_rule3(LCURRENT, __func__, (rule)); \
|
||||
} while (0)
|
||||
#endif
|
||||
|
||||
void log_rule2(const char *func, size_t line, const char *rule, chunk_t *first, chunk_t *second);
|
||||
|
||||
|
||||
#ifdef SUPER_LOG
|
||||
void log_rule3(log_sev_t sev, const char *func, size_t line, const char *rule);
|
||||
|
||||
#else
|
||||
void log_rule3(log_sev_t sev, const char *func, const char *rule);
|
||||
|
||||
#endif
|
||||
|
||||
void log_rule4(const char *rule, chunk_t *first);
|
||||
|
||||
#endif /* LOG_RULES_H_INCLUDED */
|
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,4 @@
|
||||
##BANNER##
|
||||
#include "options.h"
|
||||
|
||||
#include "uncrustify_types.h"
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,53 @@
|
||||
/**
|
||||
* @file parent_for_pp.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#include "parent_for_pp.h"
|
||||
|
||||
#include "chunk_list.h"
|
||||
|
||||
|
||||
void do_parent_for_pp(void)
|
||||
{
|
||||
LOG_FUNC_ENTRY();
|
||||
|
||||
vector<chunk_t *> viz;
|
||||
|
||||
chunk_t *pc = chunk_get_head();
|
||||
|
||||
while ((pc = chunk_get_next_ncnnl(pc)) != nullptr)
|
||||
{
|
||||
// CT_PP_IF, // #if, #ifdef, or #ifndef
|
||||
// CT_PP_ELSE, // #else or #elif
|
||||
// CT_PP_ENDIF, // #endif
|
||||
if (chunk_is_token(pc, CT_PP_IF))
|
||||
{
|
||||
LOG_FMT(LMCB, "%s(%d): IF: orig_line %zu, orig_col is %zu\n",
|
||||
__func__, __LINE__, pc->orig_line, pc->orig_col);
|
||||
log_pcf_flags(LMCB, pc->flags);
|
||||
viz.push_back(pc);
|
||||
}
|
||||
else if (chunk_is_token(pc, CT_PP_ELSE))
|
||||
{
|
||||
LOG_FMT(LMCB, "%s(%d): ELSE: orig_line %zu, orig_col is %zu\n",
|
||||
__func__, __LINE__, pc->orig_line, pc->orig_col);
|
||||
log_pcf_flags(LMCB, pc->flags);
|
||||
size_t level = pc->pp_level;
|
||||
chunk_t *a = viz.at(level - 1);
|
||||
chunk_set_parent(pc, a);
|
||||
}
|
||||
else if (chunk_is_token(pc, CT_PP_ENDIF))
|
||||
{
|
||||
LOG_FMT(LMCB, "%s(%d): ENDIF: orig_line %zu, orig_col is %zu\n",
|
||||
__func__, __LINE__, pc->orig_line, pc->orig_col);
|
||||
log_pcf_flags(LMCB, pc->flags);
|
||||
size_t level = pc->pp_level;
|
||||
chunk_t *a = viz.at(level);
|
||||
chunk_set_parent(pc, a);
|
||||
viz.pop_back();
|
||||
}
|
||||
}
|
||||
} // do_parent_for_pp
|
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* @file parent_for_pp.h
|
||||
* prototype for parent_for_pp.cpp
|
||||
*
|
||||
* @author Guy Maurel
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef PARENT_FOR_PP_H_INCLUDED
|
||||
#define PARENT_FOR_PP_H_INCLUDED
|
||||
|
||||
|
||||
// mark the parent
|
||||
void do_parent_for_pp(void);
|
||||
|
||||
|
||||
#endif /* PARENT_FOR_PP_H_INCLUDED */
|
@ -1,15 +1,15 @@
|
||||
/**
|
||||
* @file sorting.h
|
||||
* prototypes for sorting.c
|
||||
* prototypes for sorting.cpp
|
||||
*
|
||||
* @author Ben Gardner
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef SORTING_H_INCLUDED
|
||||
#define SORTING_H_INCLUDED
|
||||
|
||||
#include "uncrustify_types.h"
|
||||
#include <stdlib.h>
|
||||
|
||||
/**
|
||||
* alphabetically sort the #include or #import
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,55 @@
|
||||
/**
|
||||
* @file tokenize.h
|
||||
* prototypes for tokenize.c
|
||||
*
|
||||
* @author Ben Gardner
|
||||
* @license GPL v2+
|
||||
*/
|
||||
|
||||
#ifndef TOKENIZE_H_INCLUDED
|
||||
#define TOKENIZE_H_INCLUDED
|
||||
|
||||
#include "uncrustify_types.h"
|
||||
|
||||
|
||||
/**
|
||||
* Test the input string to see if it satisfies the criteria
|
||||
* specified by the disable_processing_cmt option
|
||||
* @param text the string to which a match will be attempted
|
||||
* @param start_idx the starting index within the string from which the
|
||||
* search will be performed
|
||||
* @return returns a non-negative position index that points to the beginning
|
||||
* of the line containing the marker, if found
|
||||
*/
|
||||
int find_disable_processing_comment_marker(const unc_text &text, std::size_t start_idx = 0);
|
||||
|
||||
|
||||
/**
|
||||
* Test the input string to see if it satisfies the criteria
|
||||
* specified by the enable_processing_cmt option
|
||||
* @param text the string to which a match will be attempted
|
||||
* @param start_idx the starting index within the string from which the
|
||||
* search will be performed
|
||||
* @return returns a non-negative position index that points to the end
|
||||
* of the line containing the marker, if found
|
||||
*/
|
||||
int find_enable_processing_comment_marker(const unc_text &text, std::size_t start_idx = 0);
|
||||
|
||||
|
||||
/**
|
||||
* @brief Parse the text into chunks
|
||||
*
|
||||
* This function parses or tokenizes the whole buffer into a list.
|
||||
* It has to do some tricks to parse preprocessors.
|
||||
*
|
||||
* If output_text() were called immediately after, two things would happen:
|
||||
* - trailing whitespace are removed.
|
||||
* - leading space & tabs are converted to the appropriate format.
|
||||
*
|
||||
* All the tokens are inserted before ref. If ref is NULL, they are inserted
|
||||
* at the end of the list. Line numbers are relative to the start of the data.
|
||||
*/
|
||||
void tokenize(const std::deque<int> &data, chunk_t *ref);
|
||||
|
||||
|
||||
#endif /* TOKENIZE_H_INCLUDED */
|
@ -1,4 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
namespace uncrustify
|
||||
{
|
||||
|
@ -0,0 +1,4 @@
|
||||
indent_with_tabs = 0
|
||||
indent_columns = 3
|
||||
sp_arith = force
|
||||
sp_assign = force
|
@ -0,0 +1 @@
|
||||
debug_truncate = 38
|
@ -0,0 +1,11 @@
|
||||
{
|
||||
a = b + 111-55;
|
||||
}
|
||||
template<typename...A, int...B>
|
||||
struct foo1:foo1<A..., (sizeof...(A)+B)...>
|
||||
{
|
||||
foo1() {
|
||||
int x = sizeof...(A);
|
||||
bool b = x > 1;
|
||||
}
|
||||
};
|
@ -0,0 +1,4 @@
|
||||
// 1 6789A123456789B123456789c123456789d123456789 123456789 123456789 123
|
||||
// 2 6789A123456789B123456789c123456789
|
||||
// 3 6789A123456789B123456789c12345678
|
||||
// 4 6789A123456789B123456789c1234567
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,237 @@
|
||||
Newline loop start: 0
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_struct_brace'
|
||||
log_rule(newlines_struct_union : rule is 'nl_define_macro'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_ds_struct_enum_cmt'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_open'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_close'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_define_macro'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_create_func_def_one_liner'
|
||||
log_rule(collapse_empty_body : rule is 'nl_collapse_empty_body'
|
||||
log_rule(newlines_brace_pair : rule is 'eat_blanks_after_open_brace'
|
||||
log_rule(newline_def_blk : rule is 'nl_var_def_blk_end'
|
||||
log_rule(newline_def_blk : rule is 'nl_var_def_blk_end'
|
||||
log_rule(newline_def_blk : rule is 'nl_var_def_blk_start'
|
||||
log_rule(newline_def_blk : rule is 'nl_var_def_blk_start'
|
||||
newline_add_between : start->text() is ';', type is SEMICOLON, orig_line is 14, orig_col is 24
|
||||
newline_add_between : and end->text() is '}', orig_line is 15, orig_col is 1
|
||||
[CallStack]
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_args_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_args_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_type_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_type_name_class'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_class_scope'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_scope_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_proto_type_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_paren'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_paren'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_paren_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_paren_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_call_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_args_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_args_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_type_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_type_name_class'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_class_scope'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_scope_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_proto_type_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_paren'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_paren'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_paren_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_paren_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_call_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_args_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_args_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_type_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_type_name_class'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_class_scope'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_scope_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_proto_type_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_paren'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_paren'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_paren_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_paren_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_call_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_before_opening_brace_func_class_def'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_open'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_close'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_define_macro'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_create_func_def_one_liner'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_fdef_brace_cond'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_fdef_brace'
|
||||
log_rule(collapse_empty_body : rule is 'nl_collapse_empty_body'
|
||||
log_rule(newlines_brace_pair : rule is 'eat_blanks_after_open_brace'
|
||||
newline_add_between : start->text() is '{', type is BRACE_OPEN, orig_line is 6, orig_col is 1
|
||||
newline_add_between : and end->text() is '}', orig_line is 7, orig_col is 1
|
||||
[CallStack]
|
||||
newline_add_between : start->text() is '{', type is BRACE_OPEN, orig_line is 6, orig_col is 1
|
||||
newline_add_between : and end->text() is '}', orig_line is 7, orig_col is 1
|
||||
[CallStack]
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_square'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_fparen'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_close'
|
||||
log_rule(newlines_cleanup_braces : rule is 'eat_blanks_before_close_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_struct_var'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_after_brace_close'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_start_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_start_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_args_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_args_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end_single'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_end_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_end_multi_line'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_decl_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_type_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_type_name_class'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_class_scope'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_scope_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_proto_type_name'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_paren'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_paren'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_def_paren_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_paren_empty'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_func_call_args'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_before_opening_brace_func_class_def'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_open'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_close'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_define_macro'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_create_func_def_one_liner'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_fdef_brace_cond'
|
||||
log_rule(newlines_brace_pair : rule is 'nl_fdef_brace'
|
||||
log_rule(collapse_empty_body : rule is 'nl_collapse_empty_body'
|
||||
log_rule(newlines_brace_pair : rule is 'eat_blanks_after_open_brace'
|
||||
newline_add_between : start->text() is '{', type is BRACE_OPEN, orig_line is 10, orig_col is 1
|
||||
newline_add_between : and end->text() is '}', orig_line is 11, orig_col is 1
|
||||
[CallStack]
|
||||
newline_add_between : start->text() is '{', type is BRACE_OPEN, orig_line is 10, orig_col is 1
|
||||
newline_add_between : and end->text() is '}', orig_line is 11, orig_col is 1
|
||||
[CallStack]
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_square'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_fparen'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_close'
|
||||
log_rule(newlines_cleanup_braces : rule is 'eat_blanks_before_close_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_struct_var'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_after_brace_close'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_after_semicolon'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_after_semicolon'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_square'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_fparen'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_type_brace_init_lst_close'
|
||||
log_rule(newlines_cleanup_braces : rule is 'eat_blanks_before_close_brace'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_brace_struct_var'
|
||||
log_rule(newlines_cleanup_braces : rule is 'nl_after_semicolon'
|
||||
log_rule(newline_def_blk : rule is 'nl_var_def_blk_end'
|
||||
log_rule(newline_def_blk : rule is 'nl_var_def_blk_end'
|
||||
log_rule(newline_def_blk : rule is 'nl_var_def_blk_start'
|
||||
log_rule(newline_def_blk : rule is 'nl_var_def_blk_start'
|
||||
log_rule(newlines_func_pre_blank_lines : rule is 'nl_before_func_class_def'
|
||||
log_rule(newlines_func_pre_blank_lines : rule is 'nl_before_func_class_proto'
|
||||
log_rule(newlines_func_pre_blank_lines : rule is 'nl_before_func_body_def'
|
||||
log_rule(newlines_func_pre_blank_lines : rule is 'nl_before_func_body_proto'
|
||||
log_rule(newlines_func_pre_blank_lines : rule is 'nl_before_func_class_def'
|
||||
log_rule(newlines_func_pre_blank_lines : rule is 'nl_before_func_class_proto'
|
||||
log_rule(newlines_func_pre_blank_lines : rule is 'nl_before_func_body_def'
|
||||
log_rule(newlines_func_pre_blank_lines : rule is 'nl_before_func_body_proto'
|
||||
log_rule(newlines_class_colon_pos : rule is 'pos_class_colon'
|
||||
log_rule(newlines_class_colon_pos : rule is 'nl_class_colon'
|
||||
log_rule(newlines_class_colon_pos : rule is 'nl_class_init_args'
|
||||
log_rule(newlines_class_colon_pos : rule is 'pos_class_comma'
|
||||
log_rule(newlines_class_colon_pos : rule is 'align_constr_value_span'
|
||||
log_rule(newlines_class_colon_pos : rule is 'pos_constr_colon'
|
||||
log_rule(newlines_class_colon_pos : rule is 'nl_constr_colon'
|
||||
log_rule(newlines_class_colon_pos : rule is 'nl_constr_init_args'
|
||||
log_rule(newlines_class_colon_pos : rule is 'pos_constr_comma'
|
||||
log_rule(newlines_class_colon_pos : rule is 'align_constr_value_span'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_start_of_file'
|
||||
log_rule(can_increase_nl : rule is 'nl_end_of_file'
|
||||
log_rule(do_blank_lines : rule is 'nl_after_class'
|
||||
log_rule(do_blank_lines : rule is 'nl_after_struct'
|
||||
log_rule(newlines_functions_remove_extra_blank_lines : rule is 'nl_max_blank_in_func'
|
||||
newlines_functions_remove_extra_blank_lines : nl_max_blank_in_func is zero
|
@ -1,186 +1,371 @@
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(parse_next : rule is 'disable_processing_nl_cont'
|
||||
log_rule(tokenize : rule is 'newlines'
|
||||
brace_cleanup : orig_line is 1, orig_col is 1, text() is 'struct'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 1, orig_col is 1, type is STRUCT, tos is 0, TOS.type is EOF, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 1, type is STRUCT, text() is 'struct'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 1, orig_col is 8, text() is 'TelegramIndex'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 1, orig_col is 8, type is TYPE, tos is 0, TOS.type is EOF, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 1, type is TYPE, text() is 'TelegramIndex'
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 1, orig_col is 21, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 2, orig_col is 1, text() is '{'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 2, orig_col is 1, type is BRACE_OPEN, tos is 0, TOS.type is EOF, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 2, type is BRACE_OPEN, text() is '{'
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 2
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 3
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 2, orig_col is 2, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 3, orig_col is 1, text() is 'TelegramIndex'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 1, type is WORD, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is WORD, text() is 'TelegramIndex'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 3, orig_col is 14, text() is '('
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 14, type is PAREN_OPEN, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is PAREN_OPEN, text() is '('
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 3, orig_col is 15, text() is 'const'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 15, type is QUALIFIER, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is QUALIFIER, text() is 'const'
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 3, orig_col is 21, text() is 'char'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 21, type is TYPE, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is TYPE, text() is 'char'
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 3, orig_col is 25, text() is '*'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 25, type is PTR_TYPE, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is PTR_TYPE, text() is '*'
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 2
|
||||
parse_cleanup : frm.stmt_count is 5, frm.expr_count is 3
|
||||
brace_cleanup : orig_line is 3, orig_col is 27, text() is 'pN'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 27, type is WORD, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is WORD, text() is 'pN'
|
||||
parse_cleanup : frm.stmt_count is 5, frm.expr_count is 3
|
||||
parse_cleanup : frm.stmt_count is 6, frm.expr_count is 4
|
||||
brace_cleanup : orig_line is 3, orig_col is 29, text() is ','
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 29, type is COMMA, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is COMMA, text() is ','
|
||||
parse_cleanup : frm.stmt_count is 6, frm.expr_count is 4
|
||||
parse_cleanup : frm.stmt_count is 7, frm.expr_count is 5
|
||||
brace_cleanup : orig_line is 3, orig_col is 31, text() is 'unsigned'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 31, type is TYPE, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is TYPE, text() is 'unsigned'
|
||||
parse_cleanup : frm.stmt_count is 7, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 8, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 3, orig_col is 40, text() is 'long'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 40, type is TYPE, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is TYPE, text() is 'long'
|
||||
parse_cleanup : frm.stmt_count is 8, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 9, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 3, orig_col is 45, text() is 'nI'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 45, type is WORD, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is WORD, text() is 'nI'
|
||||
parse_cleanup : frm.stmt_count is 9, frm.expr_count is 2
|
||||
parse_cleanup : frm.stmt_count is 10, frm.expr_count is 3
|
||||
brace_cleanup : orig_line is 3, orig_col is 47, text() is ')'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 47, type is PAREN_CLOSE, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is PAREN_CLOSE, text() is ')'
|
||||
parse_cleanup : frm.stmt_count is 10, frm.expr_count is 3
|
||||
parse_cleanup : frm.stmt_count is 11, frm.expr_count is 4
|
||||
brace_cleanup : orig_line is 3, orig_col is 49, text() is ':'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 3, orig_col is 49, type is COLON, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 3, type is COLON, text() is ':'
|
||||
parse_cleanup : frm.stmt_count is 11, frm.expr_count is 4
|
||||
parse_cleanup : frm.stmt_count is 12, frm.expr_count is 5
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 3, orig_col is 50, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 4, orig_col is 1, text() is 'pTelName'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 4, orig_col is 1, type is WORD, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 4, type is WORD, text() is 'pTelName'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 4, orig_col is 9, text() is '('
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 4, orig_col is 9, type is PAREN_OPEN, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 4, type is PAREN_OPEN, text() is '('
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 4, orig_col is 10, text() is 'pN'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 4, orig_col is 10, type is WORD, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 4, type is WORD, text() is 'pN'
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 4, orig_col is 12, text() is ')'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 4, orig_col is 12, type is PAREN_CLOSE, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 4, type is PAREN_CLOSE, text() is ')'
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 4, orig_col is 13, text() is ','
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 4, orig_col is 13, type is COMMA, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 4, type is COMMA, text() is ','
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 2
|
||||
parse_cleanup : frm.stmt_count is 5, frm.expr_count is 3
|
||||
brace_cleanup : orig_line is 4, orig_col is 14, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 5, orig_col is 1, text() is 'nTelIndex'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 5, orig_col is 1, type is WORD, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 5, type is WORD, text() is 'nTelIndex'
|
||||
parse_cleanup : frm.stmt_count is 5, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 6, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 5, orig_col is 10, text() is '('
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 5, orig_col is 10, type is PAREN_OPEN, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 5, type is PAREN_OPEN, text() is '('
|
||||
parse_cleanup : frm.stmt_count is 6, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 7, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 5, orig_col is 11, text() is 'n'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 5, orig_col is 11, type is WORD, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 5, type is WORD, text() is 'n'
|
||||
parse_cleanup : frm.stmt_count is 7, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 8, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 5, orig_col is 12, text() is ')'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 5, orig_col is 12, type is PAREN_CLOSE, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 5, type is PAREN_CLOSE, text() is ')'
|
||||
parse_cleanup : frm.stmt_count is 8, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 9, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 5, orig_col is 13, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 6, orig_col is 1, text() is '{'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 6, orig_col is 1, type is BRACE_OPEN, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 6, type is BRACE_OPEN, text() is '{'
|
||||
parse_cleanup : frm.stmt_count is 9, frm.expr_count is 2
|
||||
parse_cleanup : frm.stmt_count is 10, frm.expr_count is 3
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 6, orig_col is 2, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 7, orig_col is 1, text() is '}'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 7, orig_col is 1, type is BRACE_CLOSE, tos is 2, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 7, type is BRACE_CLOSE, text() is '}'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 7, orig_col is 2, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 9, orig_col is 1, text() is '~'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 9, orig_col is 1, type is INV, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 9, type is INV, text() is '~'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 9, orig_col is 2, text() is 'TelegramIndex'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 9, orig_col is 2, type is WORD, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 9, type is WORD, text() is 'TelegramIndex'
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 9, orig_col is 15, text() is '('
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 9, orig_col is 15, type is PAREN_OPEN, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 9, type is PAREN_OPEN, text() is '('
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 9, orig_col is 16, text() is ')'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 9, orig_col is 16, type is PAREN_CLOSE, tos is 2, TOS.type is PAREN_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 9, type is PAREN_CLOSE, text() is ')'
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 9, orig_col is 17, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 10, orig_col is 1, text() is '{'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 10, orig_col is 1, type is BRACE_OPEN, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 10, type is BRACE_OPEN, text() is '{'
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 5, frm.expr_count is 2
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 10, orig_col is 2, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 11, orig_col is 1, text() is '}'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 11, orig_col is 1, type is BRACE_CLOSE, tos is 2, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 11, type is BRACE_CLOSE, text() is '}'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 11, orig_col is 2, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 13, orig_col is 1, text() is 'const'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 13, orig_col is 1, type is QUALIFIER, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 13, type is QUALIFIER, text() is 'const'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 13, orig_col is 7, text() is 'char'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 13, orig_col is 7, type is TYPE, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 13, type is TYPE, text() is 'char'
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 13, orig_col is 11, text() is '*'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 13, orig_col is 11, type is PTR_TYPE, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 13, type is PTR_TYPE, text() is '*'
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 2
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 3
|
||||
brace_cleanup : orig_line is 13, orig_col is 13, text() is 'const'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 13, orig_col is 13, type is QUALIFIER, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 13, type is QUALIFIER, text() is 'const'
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 3
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 4
|
||||
brace_cleanup : orig_line is 13, orig_col is 19, text() is 'pTelName'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 13, orig_col is 19, type is WORD, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 13, type is WORD, text() is 'pTelName'
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 4
|
||||
parse_cleanup : frm.stmt_count is 5, frm.expr_count is 5
|
||||
brace_cleanup : orig_line is 13, orig_col is 27, text() is ';'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 13, orig_col is 27, type is SEMICOLON, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 13, type is SEMICOLON, text() is ';'
|
||||
parse_cleanup : frm.stmt_count is 5, frm.expr_count is 5
|
||||
parse_cleanup : frm.stmt_count is 6, frm.expr_count is 6
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 13, orig_col is 28, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 14, orig_col is 1, text() is 'unsigned'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 14, orig_col is 1, type is TYPE, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 14, type is TYPE, text() is 'unsigned'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
brace_cleanup : orig_line is 14, orig_col is 10, text() is 'long'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 14, orig_col is 10, type is TYPE, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 14, type is TYPE, text() is 'long'
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 2
|
||||
brace_cleanup : orig_line is 14, orig_col is 15, text() is 'nTelIndex'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 14, orig_col is 15, type is WORD, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 14, type is WORD, text() is 'nTelIndex'
|
||||
parse_cleanup : frm.stmt_count is 2, frm.expr_count is 2
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 3
|
||||
brace_cleanup : orig_line is 14, orig_col is 24, text() is ';'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 14, orig_col is 24, type is SEMICOLON, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 14, type is SEMICOLON, text() is ';'
|
||||
parse_cleanup : frm.stmt_count is 3, frm.expr_count is 3
|
||||
parse_cleanup : frm.stmt_count is 4, frm.expr_count is 4
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 14, orig_col is 25, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
brace_cleanup : orig_line is 15, orig_col is 1, text() is '}'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 15, orig_col is 1, type is BRACE_CLOSE, tos is 1, TOS.type is BRACE_OPEN, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 15, type is BRACE_CLOSE, text() is '}'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 15, orig_col is 2, text() is ';'
|
||||
brace_cleanup : pp_level is 0
|
||||
parse_cleanup : orig_line is 15, orig_col is 2, type is SEMICOLON, tos is 0, TOS.type is EOF, TOS.stage is NONE, []
|
||||
parse_cleanup : orig_line is 15, type is SEMICOLON, text() is ';'
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
parse_cleanup : frm.stmt_count is 1, frm.expr_count is 1
|
||||
parse_cleanup : frm.stmt_count is 0, frm.expr_count is 0
|
||||
brace_cleanup : orig_line is 15, orig_col is 3, text() is ''
|
||||
brace_cleanup : pp_level is 0
|
||||
log_rule(enum_cleanup : rule is 'mod_enum_last_comma'
|
@ -0,0 +1,741 @@
|
||||
space_text : orig_line is 1, orig_col is 1, 'struct' type is STRUCT
|
||||
space_text : back-to-back words need a space: pc->text() 'struct', next->text() 'TelegramIndex'
|
||||
space_text : orig_line is 1, orig_col is 1, pc-text() 'struct', type is STRUCT
|
||||
do_space : orig_line is 1, orig_col is 1, first->text() 'struct', type is STRUCT
|
||||
do_space : first->orig_line is 1, first->orig_col is 1, first->text() is 'struct', [STRUCT/NONE] <===>
|
||||
second->orig_line is 1, second->orig_col is 8, second->text() is 'TelegramIndex', [TYPE/STRUCT] : rule ADD from add_space_table[ ]
|
||||
ensure_force_space : <force between 'struct' and 'TelegramIndex'> rule = ADD @ 1 => 8
|
||||
space_text : orig_line is 1, orig_col is 8, 'TelegramIndex' type is TYPE
|
||||
space_text : orig_line is 1, orig_col is 8, pc-text() 'TelegramIndex', type is TYPE
|
||||
do_space : orig_line is 1, orig_col is 8, first->text() 'TelegramIndex', type is TYPE
|
||||
rule = REMOVE @ 0 => 21
|
||||
space_text : orig_line is 1, orig_col is 21, <Newline>, nl is 1
|
||||
space_text : orig_line is 2, orig_col is 1, '{' type is BRACE_OPEN
|
||||
space_text : orig_line is 2, orig_col is 1, pc-text() '{', type is BRACE_OPEN
|
||||
do_space : orig_line is 2, orig_col is 1, first->text() '{', type is BRACE_OPEN
|
||||
rule = REMOVE @ 0 => 2
|
||||
space_text : orig_line is 2, orig_col is 2, <Newline>, nl is 1
|
||||
space_text : orig_line is 3, orig_col is 1, 'TelegramIndex' type is FUNC_CLASS_DEF
|
||||
space_text : orig_line is 3, orig_col is 1, pc-text() 'TelegramIndex', type is FUNC_CLASS_DEF
|
||||
do_space : orig_line is 3, orig_col is 1, first->text() 'TelegramIndex', type is FUNC_CLASS_DEF
|
||||
do_space : first->orig_line is 3, first->orig_col is 1, first->text() is 'TelegramIndex', [FUNC_CLASS_DEF/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 14, second->text() is '(', [FPAREN_OPEN/FUNC_CLASS_DEF] : rule sp_func_class_paren[ ]
|
||||
rule = IGNORE @ 0 => 14
|
||||
space_text : orig_line is 3, orig_col is 14, '(' type is FPAREN_OPEN
|
||||
space_text : orig_line is 3, orig_col is 14, pc-text() '(', type is FPAREN_OPEN
|
||||
do_space : orig_line is 3, orig_col is 14, first->text() '(', type is FPAREN_OPEN
|
||||
do_space : first->orig_line is 3, first->orig_col is 14, first->text() is '(', [FPAREN_OPEN/FUNC_CLASS_DEF] <===>
|
||||
second->orig_line is 3, second->orig_col is 15, second->text() is 'const', [QUALIFIER/NONE] : rule sp_inside_fparen[ ]
|
||||
rule = IGNORE @ 0 => 15
|
||||
space_text : orig_line is 3, orig_col is 15, 'const' type is QUALIFIER
|
||||
space_text : back-to-back words need a space: pc->text() 'const', next->text() 'char'
|
||||
space_text : orig_line is 3, orig_col is 15, pc-text() 'const', type is QUALIFIER
|
||||
do_space : orig_line is 3, orig_col is 15, first->text() 'const', type is QUALIFIER
|
||||
do_space : first->orig_line is 3, first->orig_col is 15, first->text() is 'const', [QUALIFIER/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 21, second->text() is 'char', [TYPE/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'const' and 'char'> rule = FORCE @ 1 => 21
|
||||
space_text : orig_line is 3, orig_col is 21, 'char' type is TYPE
|
||||
space_text : orig_line is 3, orig_col is 21, pc-text() 'char', type is TYPE
|
||||
do_space : orig_line is 3, orig_col is 21, first->text() 'char', type is TYPE
|
||||
do_space : first->orig_line is 3, first->orig_col is 21, first->text() is 'char', [TYPE/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 25, second->text() is '*', [PTR_TYPE/NONE] : rule IGNORE[ ]
|
||||
rule = IGNORE @ 0 => 25
|
||||
space_text : orig_line is 3, orig_col is 25, '*' type is PTR_TYPE
|
||||
space_text : orig_line is 3, orig_col is 25, pc-text() '*', type is PTR_TYPE
|
||||
do_space : orig_line is 3, orig_col is 25, first->text() '*', type is PTR_TYPE
|
||||
do_space : first->orig_line is 3, first->orig_col is 25, first->text() is '*', [PTR_TYPE/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 27, second->text() is 'pN', [WORD/NONE] : rule IGNORE[ ]
|
||||
rule = IGNORE @ 1 => 27
|
||||
space_text : orig_line is 3, orig_col is 27, 'pN' type is WORD
|
||||
space_text : orig_line is 3, orig_col is 27, pc-text() 'pN', type is WORD
|
||||
do_space : orig_line is 3, orig_col is 27, first->text() 'pN', type is WORD
|
||||
do_space : first->orig_line is 3, first->orig_col is 27, first->text() is 'pN', [WORD/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 29, second->text() is ',', [COMMA/NONE] : rule sp_before_comma[ ]
|
||||
rule = REMOVE @ 0 => 29
|
||||
space_text : orig_line is 3, orig_col is 29, ',' type is COMMA
|
||||
space_text : orig_line is 3, orig_col is 29, pc-text() ',', type is COMMA
|
||||
do_space : orig_line is 3, orig_col is 29, first->text() ',', type is COMMA
|
||||
do_space : first->orig_line is 3, first->orig_col is 29, first->text() is ',', [COMMA/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 31, second->text() is 'unsigned', [TYPE/NONE] : rule sp_after_comma[ ]
|
||||
rule = IGNORE @ 1 => 31
|
||||
space_text : orig_line is 3, orig_col is 31, 'unsigned' type is TYPE
|
||||
space_text : back-to-back words need a space: pc->text() 'unsigned', next->text() 'long'
|
||||
space_text : orig_line is 3, orig_col is 31, pc-text() 'unsigned', type is TYPE
|
||||
do_space : orig_line is 3, orig_col is 31, first->text() 'unsigned', type is TYPE
|
||||
do_space : first->orig_line is 3, first->orig_col is 31, first->text() is 'unsigned', [TYPE/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 40, second->text() is 'long', [TYPE/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'unsigned' and 'long'> rule = FORCE @ 1 => 40
|
||||
space_text : orig_line is 3, orig_col is 40, 'long' type is TYPE
|
||||
space_text : back-to-back words need a space: pc->text() 'long', next->text() 'nI'
|
||||
space_text : orig_line is 3, orig_col is 40, pc-text() 'long', type is TYPE
|
||||
do_space : orig_line is 3, orig_col is 40, first->text() 'long', type is TYPE
|
||||
do_space : first->orig_line is 3, first->orig_col is 40, first->text() is 'long', [TYPE/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 45, second->text() is 'nI', [WORD/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'long' and 'nI'> rule = FORCE @ 1 => 45
|
||||
space_text : orig_line is 3, orig_col is 45, 'nI' type is WORD
|
||||
space_text : orig_line is 3, orig_col is 45, pc-text() 'nI', type is WORD
|
||||
do_space : orig_line is 3, orig_col is 45, first->text() 'nI', type is WORD
|
||||
do_space : first->orig_line is 3, first->orig_col is 45, first->text() is 'nI', [WORD/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 47, second->text() is ')', [FPAREN_CLOSE/FUNC_CLASS_DEF] : rule sp_inside_fparen[ ]
|
||||
rule = IGNORE @ 0 => 47
|
||||
space_text : orig_line is 3, orig_col is 47, ')' type is FPAREN_CLOSE
|
||||
space_text : orig_line is 3, orig_col is 47, pc-text() ')', type is FPAREN_CLOSE
|
||||
do_space : orig_line is 3, orig_col is 47, first->text() ')', type is FPAREN_CLOSE
|
||||
do_space : first->orig_line is 3, first->orig_col is 47, first->text() is ')', [FPAREN_CLOSE/FUNC_CLASS_DEF] <===>
|
||||
second->orig_line is 3, second->orig_col is 49, second->text() is ':', [CONSTR_COLON/NONE] : rule ADD from add_space_table[ ]
|
||||
rule = ADD @ 1 => 49
|
||||
space_text : orig_line is 3, orig_col is 49, ':' type is CONSTR_COLON
|
||||
space_text : orig_line is 3, orig_col is 49, pc-text() ':', type is CONSTR_COLON
|
||||
do_space : orig_line is 3, orig_col is 49, first->text() ':', type is CONSTR_COLON
|
||||
rule = REMOVE @ 0 => 50
|
||||
space_text : orig_line is 3, orig_col is 50, <Newline>, nl is 1
|
||||
space_text : orig_line is 4, orig_col is 1, 'pTelName' type is FUNC_CTOR_VAR
|
||||
space_text : orig_line is 4, orig_col is 1, pc-text() 'pTelName', type is FUNC_CTOR_VAR
|
||||
do_space : orig_line is 4, orig_col is 1, first->text() 'pTelName', type is FUNC_CTOR_VAR
|
||||
do_space : first->orig_line is 4, first->orig_col is 1, first->text() is 'pTelName', [FUNC_CTOR_VAR/NONE] <===>
|
||||
second->orig_line is 4, second->orig_col is 9, second->text() is '(', [FPAREN_OPEN/FUNC_CTOR_VAR] : rule sp_func_call_paren[ ]
|
||||
rule = IGNORE @ 0 => 9
|
||||
space_text : orig_line is 4, orig_col is 9, '(' type is FPAREN_OPEN
|
||||
space_text : orig_line is 4, orig_col is 9, pc-text() '(', type is FPAREN_OPEN
|
||||
do_space : orig_line is 4, orig_col is 9, first->text() '(', type is FPAREN_OPEN
|
||||
do_space : first->orig_line is 4, first->orig_col is 9, first->text() is '(', [FPAREN_OPEN/FUNC_CTOR_VAR] <===>
|
||||
second->orig_line is 4, second->orig_col is 10, second->text() is 'pN', [WORD/NONE] : rule sp_inside_fparen[ ]
|
||||
rule = IGNORE @ 0 => 10
|
||||
space_text : orig_line is 4, orig_col is 10, 'pN' type is WORD
|
||||
space_text : orig_line is 4, orig_col is 10, pc-text() 'pN', type is WORD
|
||||
do_space : orig_line is 4, orig_col is 10, first->text() 'pN', type is WORD
|
||||
do_space : first->orig_line is 4, first->orig_col is 10, first->text() is 'pN', [WORD/NONE] <===>
|
||||
second->orig_line is 4, second->orig_col is 12, second->text() is ')', [FPAREN_CLOSE/FUNC_CTOR_VAR] : rule sp_inside_fparen[ ]
|
||||
rule = IGNORE @ 0 => 12
|
||||
space_text : orig_line is 4, orig_col is 12, ')' type is FPAREN_CLOSE
|
||||
space_text : orig_line is 4, orig_col is 12, pc-text() ')', type is FPAREN_CLOSE
|
||||
do_space : orig_line is 4, orig_col is 12, first->text() ')', type is FPAREN_CLOSE
|
||||
do_space : first->orig_line is 4, first->orig_col is 12, first->text() is ')', [FPAREN_CLOSE/FUNC_CTOR_VAR] <===>
|
||||
second->orig_line is 4, second->orig_col is 13, second->text() is ',', [COMMA/NONE] : rule sp_before_comma[ ]
|
||||
rule = REMOVE @ 0 => 13
|
||||
space_text : orig_line is 4, orig_col is 13, ',' type is COMMA
|
||||
space_text : orig_line is 4, orig_col is 13, pc-text() ',', type is COMMA
|
||||
do_space : orig_line is 4, orig_col is 13, first->text() ',', type is COMMA
|
||||
rule = REMOVE @ 0 => 14
|
||||
space_text : orig_line is 4, orig_col is 14, <Newline>, nl is 1
|
||||
space_text : orig_line is 5, orig_col is 1, 'nTelIndex' type is FUNC_CTOR_VAR
|
||||
space_text : orig_line is 5, orig_col is 1, pc-text() 'nTelIndex', type is FUNC_CTOR_VAR
|
||||
do_space : orig_line is 5, orig_col is 1, first->text() 'nTelIndex', type is FUNC_CTOR_VAR
|
||||
do_space : first->orig_line is 5, first->orig_col is 1, first->text() is 'nTelIndex', [FUNC_CTOR_VAR/NONE] <===>
|
||||
second->orig_line is 5, second->orig_col is 10, second->text() is '(', [FPAREN_OPEN/FUNC_CTOR_VAR] : rule sp_func_call_paren[ ]
|
||||
rule = IGNORE @ 0 => 10
|
||||
space_text : orig_line is 5, orig_col is 10, '(' type is FPAREN_OPEN
|
||||
space_text : orig_line is 5, orig_col is 10, pc-text() '(', type is FPAREN_OPEN
|
||||
do_space : orig_line is 5, orig_col is 10, first->text() '(', type is FPAREN_OPEN
|
||||
do_space : first->orig_line is 5, first->orig_col is 10, first->text() is '(', [FPAREN_OPEN/FUNC_CTOR_VAR] <===>
|
||||
second->orig_line is 5, second->orig_col is 11, second->text() is 'n', [WORD/NONE] : rule sp_inside_fparen[ ]
|
||||
rule = IGNORE @ 0 => 11
|
||||
space_text : orig_line is 5, orig_col is 11, 'n' type is WORD
|
||||
space_text : orig_line is 5, orig_col is 11, pc-text() 'n', type is WORD
|
||||
do_space : orig_line is 5, orig_col is 11, first->text() 'n', type is WORD
|
||||
do_space : first->orig_line is 5, first->orig_col is 11, first->text() is 'n', [WORD/NONE] <===>
|
||||
second->orig_line is 5, second->orig_col is 12, second->text() is ')', [FPAREN_CLOSE/FUNC_CTOR_VAR] : rule sp_inside_fparen[ ]
|
||||
rule = IGNORE @ 0 => 12
|
||||
space_text : orig_line is 5, orig_col is 12, ')' type is FPAREN_CLOSE
|
||||
space_text : orig_line is 5, orig_col is 12, pc-text() ')', type is FPAREN_CLOSE
|
||||
do_space : orig_line is 5, orig_col is 12, first->text() ')', type is FPAREN_CLOSE
|
||||
rule = REMOVE @ 0 => 13
|
||||
space_text : orig_line is 5, orig_col is 13, <Newline>, nl is 1
|
||||
space_text : orig_line is 6, orig_col is 1, '{' type is BRACE_OPEN
|
||||
space_text : orig_line is 6, orig_col is 1, pc-text() '{', type is BRACE_OPEN
|
||||
do_space : orig_line is 6, orig_col is 1, first->text() '{', type is BRACE_OPEN
|
||||
rule = REMOVE @ 0 => 2
|
||||
space_text : orig_line is 6, orig_col is 2, <Newline>, nl is 1
|
||||
space_text : orig_line is 7, orig_col is 1, '}' type is BRACE_CLOSE
|
||||
space_text : orig_line is 7, orig_col is 1, pc-text() '}', type is BRACE_CLOSE
|
||||
do_space : orig_line is 7, orig_col is 1, first->text() '}', type is BRACE_CLOSE
|
||||
rule = REMOVE @ 0 => 2
|
||||
space_text : orig_line is 7, orig_col is 2, <Newline>, nl is 2
|
||||
space_text : orig_line is 9, orig_col is 1, '~' type is DESTRUCTOR
|
||||
space_text : orig_line is 9, orig_col is 1, pc-text() '~', type is DESTRUCTOR
|
||||
do_space : orig_line is 9, orig_col is 1, first->text() '~', type is DESTRUCTOR
|
||||
do_space : first->orig_line is 9, first->orig_col is 1, first->text() is '~', [DESTRUCTOR/FUNC_CLASS_DEF] <===>
|
||||
second->orig_line is 9, second->orig_col is 2, second->text() is 'TelegramIndex', [FUNC_CLASS_DEF/DESTRUCTOR] : rule REMOVE[ ]
|
||||
rule = REMOVE @ 0 => 2
|
||||
space_text : orig_line is 9, orig_col is 2, 'TelegramIndex' type is FUNC_CLASS_DEF
|
||||
space_text : orig_line is 9, orig_col is 2, pc-text() 'TelegramIndex', type is FUNC_CLASS_DEF
|
||||
do_space : orig_line is 9, orig_col is 2, first->text() 'TelegramIndex', type is FUNC_CLASS_DEF
|
||||
do_space : first->orig_line is 9, first->orig_col is 2, first->text() is 'TelegramIndex', [FUNC_CLASS_DEF/DESTRUCTOR] <===>
|
||||
second->orig_line is 9, second->orig_col is 15, second->text() is '(', [FPAREN_OPEN/FUNC_CLASS_DEF] : rule sp_func_class_paren[ ]
|
||||
rule = IGNORE @ 0 => 15
|
||||
space_text : orig_line is 9, orig_col is 15, '(' type is FPAREN_OPEN
|
||||
space_text : orig_line is 9, orig_col is 15, pc-text() '(', type is FPAREN_OPEN
|
||||
do_space : orig_line is 9, orig_col is 15, first->text() '(', type is FPAREN_OPEN
|
||||
do_space : first->orig_line is 9, first->orig_col is 15, first->text() is '(', [FPAREN_OPEN/FUNC_CLASS_DEF] <===>
|
||||
second->orig_line is 9, second->orig_col is 16, second->text() is ')', [FPAREN_CLOSE/FUNC_CLASS_DEF] : rule sp_inside_fparens[ ]
|
||||
rule = IGNORE @ 0 => 16
|
||||
space_text : orig_line is 9, orig_col is 16, ')' type is FPAREN_CLOSE
|
||||
space_text : orig_line is 9, orig_col is 16, pc-text() ')', type is FPAREN_CLOSE
|
||||
do_space : orig_line is 9, orig_col is 16, first->text() ')', type is FPAREN_CLOSE
|
||||
rule = REMOVE @ 0 => 17
|
||||
space_text : orig_line is 9, orig_col is 17, <Newline>, nl is 1
|
||||
space_text : orig_line is 10, orig_col is 1, '{' type is BRACE_OPEN
|
||||
space_text : orig_line is 10, orig_col is 1, pc-text() '{', type is BRACE_OPEN
|
||||
do_space : orig_line is 10, orig_col is 1, first->text() '{', type is BRACE_OPEN
|
||||
rule = REMOVE @ 0 => 2
|
||||
space_text : orig_line is 10, orig_col is 2, <Newline>, nl is 1
|
||||
space_text : orig_line is 11, orig_col is 1, '}' type is BRACE_CLOSE
|
||||
space_text : orig_line is 11, orig_col is 1, pc-text() '}', type is BRACE_CLOSE
|
||||
do_space : orig_line is 11, orig_col is 1, first->text() '}', type is BRACE_CLOSE
|
||||
rule = REMOVE @ 0 => 2
|
||||
space_text : orig_line is 11, orig_col is 2, <Newline>, nl is 2
|
||||
space_text : orig_line is 13, orig_col is 1, 'const' type is QUALIFIER
|
||||
space_text : back-to-back words need a space: pc->text() 'const', next->text() 'char'
|
||||
space_text : orig_line is 13, orig_col is 1, pc-text() 'const', type is QUALIFIER
|
||||
do_space : orig_line is 13, orig_col is 1, first->text() 'const', type is QUALIFIER
|
||||
do_space : first->orig_line is 13, first->orig_col is 1, first->text() is 'const', [QUALIFIER/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 7, second->text() is 'char', [TYPE/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'const' and 'char'> rule = FORCE @ 1 => 7
|
||||
space_text : orig_line is 13, orig_col is 7, 'char' type is TYPE
|
||||
space_text : orig_line is 13, orig_col is 7, pc-text() 'char', type is TYPE
|
||||
do_space : orig_line is 13, orig_col is 7, first->text() 'char', type is TYPE
|
||||
do_space : first->orig_line is 13, first->orig_col is 7, first->text() is 'char', [TYPE/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 11, second->text() is '*', [PTR_TYPE/NONE] : rule IGNORE[ ]
|
||||
rule = IGNORE @ 0 => 11
|
||||
space_text : orig_line is 13, orig_col is 11, '*' type is PTR_TYPE
|
||||
space_text : orig_line is 13, orig_col is 11, pc-text() '*', type is PTR_TYPE
|
||||
do_space : orig_line is 13, orig_col is 11, first->text() '*', type is PTR_TYPE
|
||||
do_space : first->orig_line is 13, first->orig_col is 11, first->text() is '*', [PTR_TYPE/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 13, second->text() is 'const', [QUALIFIER/NONE] : rule IGNORE[ ]
|
||||
rule = IGNORE @ 1 => 13
|
||||
space_text : orig_line is 13, orig_col is 13, 'const' type is QUALIFIER
|
||||
space_text : back-to-back words need a space: pc->text() 'const', next->text() 'pTelName'
|
||||
space_text : orig_line is 13, orig_col is 13, pc-text() 'const', type is QUALIFIER
|
||||
do_space : orig_line is 13, orig_col is 13, first->text() 'const', type is QUALIFIER
|
||||
do_space : first->orig_line is 13, first->orig_col is 13, first->text() is 'const', [QUALIFIER/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 19, second->text() is 'pTelName', [WORD/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'const' and 'pTelName'> rule = FORCE @ 1 => 19
|
||||
space_text : orig_line is 13, orig_col is 19, 'pTelName' type is WORD
|
||||
space_text : orig_line is 13, orig_col is 19, pc-text() 'pTelName', type is WORD
|
||||
do_space : orig_line is 13, orig_col is 19, first->text() 'pTelName', type is WORD
|
||||
do_space : first->orig_line is 13, first->orig_col is 19, first->text() is 'pTelName', [WORD/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 27, second->text() is ';', [SEMICOLON/NONE] : rule sp_before_semi[ ]
|
||||
rule = REMOVE @ 0 => 27
|
||||
space_text : orig_line is 13, orig_col is 27, ';' type is SEMICOLON
|
||||
space_text : orig_line is 13, orig_col is 27, pc-text() ';', type is SEMICOLON
|
||||
do_space : orig_line is 13, orig_col is 27, first->text() ';', type is SEMICOLON
|
||||
rule = REMOVE @ 0 => 28
|
||||
space_text : orig_line is 13, orig_col is 28, <Newline>, nl is 1
|
||||
space_text : orig_line is 14, orig_col is 1, 'unsigned' type is TYPE
|
||||
space_text : back-to-back words need a space: pc->text() 'unsigned', next->text() 'long'
|
||||
space_text : orig_line is 14, orig_col is 1, pc-text() 'unsigned', type is TYPE
|
||||
do_space : orig_line is 14, orig_col is 1, first->text() 'unsigned', type is TYPE
|
||||
do_space : first->orig_line is 14, first->orig_col is 1, first->text() is 'unsigned', [TYPE/NONE] <===>
|
||||
second->orig_line is 14, second->orig_col is 10, second->text() is 'long', [TYPE/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'unsigned' and 'long'> rule = FORCE @ 1 => 10
|
||||
space_text : orig_line is 14, orig_col is 10, 'long' type is TYPE
|
||||
space_text : back-to-back words need a space: pc->text() 'long', next->text() 'nTelIndex'
|
||||
space_text : orig_line is 14, orig_col is 10, pc-text() 'long', type is TYPE
|
||||
do_space : orig_line is 14, orig_col is 10, first->text() 'long', type is TYPE
|
||||
do_space : first->orig_line is 14, first->orig_col is 10, first->text() is 'long', [TYPE/NONE] <===>
|
||||
second->orig_line is 14, second->orig_col is 15, second->text() is 'nTelIndex', [WORD/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'long' and 'nTelIndex'> rule = FORCE @ 1 => 15
|
||||
space_text : orig_line is 14, orig_col is 15, 'nTelIndex' type is WORD
|
||||
space_text : orig_line is 14, orig_col is 15, pc-text() 'nTelIndex', type is WORD
|
||||
do_space : orig_line is 14, orig_col is 15, first->text() 'nTelIndex', type is WORD
|
||||
do_space : first->orig_line is 14, first->orig_col is 15, first->text() is 'nTelIndex', [WORD/NONE] <===>
|
||||
second->orig_line is 14, second->orig_col is 24, second->text() is ';', [SEMICOLON/NONE] : rule sp_before_semi[ ]
|
||||
rule = REMOVE @ 0 => 24
|
||||
space_text : orig_line is 14, orig_col is 24, ';' type is SEMICOLON
|
||||
space_text : orig_line is 14, orig_col is 24, pc-text() ';', type is SEMICOLON
|
||||
do_space : orig_line is 14, orig_col is 24, first->text() ';', type is SEMICOLON
|
||||
rule = REMOVE @ 0 => 25
|
||||
space_text : orig_line is 14, orig_col is 25, <Newline>, nl is 1
|
||||
space_text : orig_line is 15, orig_col is 1, '}' type is BRACE_CLOSE
|
||||
space_text : orig_line is 15, orig_col is 1, pc-text() '}', type is BRACE_CLOSE
|
||||
do_space : orig_line is 15, orig_col is 1, first->text() '}', type is BRACE_CLOSE
|
||||
do_space : first->orig_line is 15, first->orig_col is 1, first->text() is '}', [BRACE_CLOSE/STRUCT] <===>
|
||||
second->orig_line is 15, second->orig_col is 2, second->text() is ';', [SEMICOLON/STRUCT] : rule sp_before_semi[ ]
|
||||
rule = REMOVE @ 0 => 2
|
||||
space_text : orig_line is 15, orig_col is 2, ';' type is SEMICOLON
|
||||
space_text : orig_line is 15, orig_col is 2, pc-text() ';', type is SEMICOLON
|
||||
do_space : orig_line is 15, orig_col is 2, first->text() ';', type is SEMICOLON
|
||||
rule = REMOVE @ 0 => 3
|
||||
space_text : orig_line is 15, orig_col is 3, <Newline>, nl is 2
|
||||
space_col_align : first->orig_line is 3, orig_col is 1, [FUNC_CLASS_DEF/NONE], text() 'TelegramIndex' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 14 [FPAREN_OPEN/FUNC_CLASS_DEF], text() '(', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 1, first->text() 'TelegramIndex', type is FUNC_CLASS_DEF
|
||||
do_space : first->orig_line is 3, first->orig_col is 1, first->text() is 'TelegramIndex', [FUNC_CLASS_DEF/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 14, second->text() is '(', [FPAREN_OPEN/FUNC_CLASS_DEF] : rule sp_func_class_paren[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 13
|
||||
space_col_align : => coldiff is 13
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 3
|
||||
space_col_align : => second->orig_line is 3
|
||||
space_col_align : => first->text() is 'TelegramIndex'
|
||||
space_col_align : => second->text() is '('
|
||||
space_col_align : => first->orig_col is 1
|
||||
space_col_align : => second->orig_col is 14
|
||||
space_col_align : => first->len() is 13
|
||||
space_col_align : => coldiff is 13
|
||||
space_col_align : first->orig_line is 3, orig_col is 14, [FPAREN_OPEN/FUNC_CLASS_DEF], text() '(' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 15 [QUALIFIER/NONE], text() 'const', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 14, first->text() '(', type is FPAREN_OPEN
|
||||
do_space : first->orig_line is 3, first->orig_col is 14, first->text() is '(', [FPAREN_OPEN/FUNC_CLASS_DEF] <===>
|
||||
second->orig_line is 3, second->orig_col is 15, second->text() is 'const', [QUALIFIER/NONE] : rule sp_inside_fparen[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 3
|
||||
space_col_align : => second->orig_line is 3
|
||||
space_col_align : => first->text() is '('
|
||||
space_col_align : => second->text() is 'const'
|
||||
space_col_align : => first->orig_col is 14
|
||||
space_col_align : => second->orig_col is 15
|
||||
space_col_align : => first->len() is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 3, orig_col is 15, [QUALIFIER/NONE], text() 'const' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 21 [TYPE/NONE], text() 'char', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 15, first->text() 'const', type is QUALIFIER
|
||||
do_space : first->orig_line is 3, first->orig_col is 15, first->text() is 'const', [QUALIFIER/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 21, second->text() is 'char', [TYPE/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'const' and 'char'>space_col_align : av is force
|
||||
space_col_align : len is 5
|
||||
space_col_align : => coldiff is 5
|
||||
space_col_align : => av is FORCE
|
||||
space_col_align : => coldiff is 6
|
||||
space_col_align : first->orig_line is 3, orig_col is 21, [TYPE/NONE], text() 'char' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 25 [PTR_TYPE/NONE], text() '*', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 21, first->text() 'char', type is TYPE
|
||||
do_space : first->orig_line is 3, first->orig_col is 21, first->text() is 'char', [TYPE/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 25, second->text() is '*', [PTR_TYPE/NONE] : rule IGNORE[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 4
|
||||
space_col_align : => coldiff is 4
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 3
|
||||
space_col_align : => second->orig_line is 3
|
||||
space_col_align : => first->text() is 'char'
|
||||
space_col_align : => second->text() is '*'
|
||||
space_col_align : => first->orig_col is 21
|
||||
space_col_align : => second->orig_col is 25
|
||||
space_col_align : => first->len() is 4
|
||||
space_col_align : => coldiff is 4
|
||||
space_col_align : first->orig_line is 3, orig_col is 25, [PTR_TYPE/NONE], text() '*' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 27 [WORD/NONE], text() 'pN', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 25, first->text() '*', type is PTR_TYPE
|
||||
do_space : first->orig_line is 3, first->orig_col is 25, first->text() is '*', [PTR_TYPE/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 27, second->text() is 'pN', [WORD/NONE] : rule IGNORE[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 3
|
||||
space_col_align : => second->orig_line is 3
|
||||
space_col_align : => first->text() is '*'
|
||||
space_col_align : => second->text() is 'pN'
|
||||
space_col_align : => first->orig_col is 25
|
||||
space_col_align : => second->orig_col is 27
|
||||
space_col_align : => first->len() is 1
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : first->orig_line is 3, orig_col is 27, [WORD/NONE], text() 'pN' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 29 [COMMA/NONE], text() ',', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 27, first->text() 'pN', type is WORD
|
||||
do_space : first->orig_line is 3, first->orig_col is 27, first->text() is 'pN', [WORD/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 29, second->text() is ',', [COMMA/NONE] : rule sp_before_comma[ ]
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 2
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : first->orig_line is 3, orig_col is 29, [COMMA/NONE], text() ',' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 31 [TYPE/NONE], text() 'unsigned', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 29, first->text() ',', type is COMMA
|
||||
do_space : first->orig_line is 3, first->orig_col is 29, first->text() is ',', [COMMA/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 31, second->text() is 'unsigned', [TYPE/NONE] : rule sp_after_comma[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 3
|
||||
space_col_align : => second->orig_line is 3
|
||||
space_col_align : => first->text() is ','
|
||||
space_col_align : => second->text() is 'unsigned'
|
||||
space_col_align : => first->orig_col is 29
|
||||
space_col_align : => second->orig_col is 31
|
||||
space_col_align : => first->len() is 1
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : first->orig_line is 3, orig_col is 31, [TYPE/NONE], text() 'unsigned' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 40 [TYPE/NONE], text() 'long', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 31, first->text() 'unsigned', type is TYPE
|
||||
do_space : first->orig_line is 3, first->orig_col is 31, first->text() is 'unsigned', [TYPE/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 40, second->text() is 'long', [TYPE/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'unsigned' and 'long'>space_col_align : av is force
|
||||
space_col_align : len is 8
|
||||
space_col_align : => coldiff is 8
|
||||
space_col_align : => av is FORCE
|
||||
space_col_align : => coldiff is 9
|
||||
space_col_align : first->orig_line is 3, orig_col is 40, [TYPE/NONE], text() 'long' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 45 [WORD/NONE], text() 'nI', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 40, first->text() 'long', type is TYPE
|
||||
do_space : first->orig_line is 3, first->orig_col is 40, first->text() is 'long', [TYPE/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 45, second->text() is 'nI', [WORD/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'long' and 'nI'>space_col_align : av is force
|
||||
space_col_align : len is 4
|
||||
space_col_align : => coldiff is 4
|
||||
space_col_align : => av is FORCE
|
||||
space_col_align : => coldiff is 5
|
||||
space_col_align : first->orig_line is 3, orig_col is 45, [WORD/NONE], text() 'nI' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 47 [FPAREN_CLOSE/FUNC_CLASS_DEF], text() ')', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 45, first->text() 'nI', type is WORD
|
||||
do_space : first->orig_line is 3, first->orig_col is 45, first->text() is 'nI', [WORD/NONE] <===>
|
||||
second->orig_line is 3, second->orig_col is 47, second->text() is ')', [FPAREN_CLOSE/FUNC_CLASS_DEF] : rule sp_inside_fparen[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 2
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 3
|
||||
space_col_align : => second->orig_line is 3
|
||||
space_col_align : => first->text() is 'nI'
|
||||
space_col_align : => second->text() is ')'
|
||||
space_col_align : => first->orig_col is 45
|
||||
space_col_align : => second->orig_col is 47
|
||||
space_col_align : => first->len() is 2
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : first->orig_line is 3, orig_col is 47, [FPAREN_CLOSE/FUNC_CLASS_DEF], text() ')' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 49 [CONSTR_COLON/NONE], text() ':', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 47, first->text() ')', type is FPAREN_CLOSE
|
||||
do_space : first->orig_line is 3, first->orig_col is 47, first->text() is ')', [FPAREN_CLOSE/FUNC_CLASS_DEF] <===>
|
||||
second->orig_line is 3, second->orig_col is 49, second->text() is ':', [CONSTR_COLON/NONE] : rule ADD from add_space_table[ ]
|
||||
space_col_align : av is add
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is ADD
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : first->orig_line is 3, orig_col is 49, [CONSTR_COLON/NONE], text() ':' <==>
|
||||
space_col_align : second->orig_line is 3, orig_col is 50 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 3, orig_col is 49, first->text() ':', type is CONSTR_COLON
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 4, orig_col is 1, [FUNC_CTOR_VAR/NONE], text() 'pTelName' <==>
|
||||
space_col_align : second->orig_line is 4, orig_col is 9 [FPAREN_OPEN/FUNC_CTOR_VAR], text() '(', [CallStack]
|
||||
do_space : orig_line is 4, orig_col is 1, first->text() 'pTelName', type is FUNC_CTOR_VAR
|
||||
do_space : first->orig_line is 4, first->orig_col is 1, first->text() is 'pTelName', [FUNC_CTOR_VAR/NONE] <===>
|
||||
second->orig_line is 4, second->orig_col is 9, second->text() is '(', [FPAREN_OPEN/FUNC_CTOR_VAR] : rule sp_func_call_paren[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 8
|
||||
space_col_align : => coldiff is 8
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 4
|
||||
space_col_align : => second->orig_line is 4
|
||||
space_col_align : => first->text() is 'pTelName'
|
||||
space_col_align : => second->text() is '('
|
||||
space_col_align : => first->orig_col is 1
|
||||
space_col_align : => second->orig_col is 9
|
||||
space_col_align : => first->len() is 8
|
||||
space_col_align : => coldiff is 8
|
||||
space_col_align : first->orig_line is 4, orig_col is 9, [FPAREN_OPEN/FUNC_CTOR_VAR], text() '(' <==>
|
||||
space_col_align : second->orig_line is 4, orig_col is 10 [WORD/NONE], text() 'pN', [CallStack]
|
||||
do_space : orig_line is 4, orig_col is 9, first->text() '(', type is FPAREN_OPEN
|
||||
do_space : first->orig_line is 4, first->orig_col is 9, first->text() is '(', [FPAREN_OPEN/FUNC_CTOR_VAR] <===>
|
||||
second->orig_line is 4, second->orig_col is 10, second->text() is 'pN', [WORD/NONE] : rule sp_inside_fparen[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 4
|
||||
space_col_align : => second->orig_line is 4
|
||||
space_col_align : => first->text() is '('
|
||||
space_col_align : => second->text() is 'pN'
|
||||
space_col_align : => first->orig_col is 9
|
||||
space_col_align : => second->orig_col is 10
|
||||
space_col_align : => first->len() is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 4, orig_col is 10, [WORD/NONE], text() 'pN' <==>
|
||||
space_col_align : second->orig_line is 4, orig_col is 12 [FPAREN_CLOSE/FUNC_CTOR_VAR], text() ')', [CallStack]
|
||||
do_space : orig_line is 4, orig_col is 10, first->text() 'pN', type is WORD
|
||||
do_space : first->orig_line is 4, first->orig_col is 10, first->text() is 'pN', [WORD/NONE] <===>
|
||||
second->orig_line is 4, second->orig_col is 12, second->text() is ')', [FPAREN_CLOSE/FUNC_CTOR_VAR] : rule sp_inside_fparen[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 2
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 4
|
||||
space_col_align : => second->orig_line is 4
|
||||
space_col_align : => first->text() is 'pN'
|
||||
space_col_align : => second->text() is ')'
|
||||
space_col_align : => first->orig_col is 10
|
||||
space_col_align : => second->orig_col is 12
|
||||
space_col_align : => first->len() is 2
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : first->orig_line is 4, orig_col is 12, [FPAREN_CLOSE/FUNC_CTOR_VAR], text() ')' <==>
|
||||
space_col_align : second->orig_line is 4, orig_col is 13 [COMMA/NONE], text() ',', [CallStack]
|
||||
do_space : orig_line is 4, orig_col is 12, first->text() ')', type is FPAREN_CLOSE
|
||||
do_space : first->orig_line is 4, first->orig_col is 12, first->text() is ')', [FPAREN_CLOSE/FUNC_CTOR_VAR] <===>
|
||||
second->orig_line is 4, second->orig_col is 13, second->text() is ',', [COMMA/NONE] : rule sp_before_comma[ ]
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 4, orig_col is 13, [COMMA/NONE], text() ',' <==>
|
||||
space_col_align : second->orig_line is 4, orig_col is 14 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 4, orig_col is 13, first->text() ',', type is COMMA
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 5, orig_col is 1, [FUNC_CTOR_VAR/NONE], text() 'nTelIndex' <==>
|
||||
space_col_align : second->orig_line is 5, orig_col is 10 [FPAREN_OPEN/FUNC_CTOR_VAR], text() '(', [CallStack]
|
||||
do_space : orig_line is 5, orig_col is 1, first->text() 'nTelIndex', type is FUNC_CTOR_VAR
|
||||
do_space : first->orig_line is 5, first->orig_col is 1, first->text() is 'nTelIndex', [FUNC_CTOR_VAR/NONE] <===>
|
||||
second->orig_line is 5, second->orig_col is 10, second->text() is '(', [FPAREN_OPEN/FUNC_CTOR_VAR] : rule sp_func_call_paren[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 9
|
||||
space_col_align : => coldiff is 9
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 5
|
||||
space_col_align : => second->orig_line is 5
|
||||
space_col_align : => first->text() is 'nTelIndex'
|
||||
space_col_align : => second->text() is '('
|
||||
space_col_align : => first->orig_col is 1
|
||||
space_col_align : => second->orig_col is 10
|
||||
space_col_align : => first->len() is 9
|
||||
space_col_align : => coldiff is 9
|
||||
space_col_align : first->orig_line is 5, orig_col is 10, [FPAREN_OPEN/FUNC_CTOR_VAR], text() '(' <==>
|
||||
space_col_align : second->orig_line is 5, orig_col is 11 [WORD/NONE], text() 'n', [CallStack]
|
||||
do_space : orig_line is 5, orig_col is 10, first->text() '(', type is FPAREN_OPEN
|
||||
do_space : first->orig_line is 5, first->orig_col is 10, first->text() is '(', [FPAREN_OPEN/FUNC_CTOR_VAR] <===>
|
||||
second->orig_line is 5, second->orig_col is 11, second->text() is 'n', [WORD/NONE] : rule sp_inside_fparen[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 5
|
||||
space_col_align : => second->orig_line is 5
|
||||
space_col_align : => first->text() is '('
|
||||
space_col_align : => second->text() is 'n'
|
||||
space_col_align : => first->orig_col is 10
|
||||
space_col_align : => second->orig_col is 11
|
||||
space_col_align : => first->len() is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 5, orig_col is 11, [WORD/NONE], text() 'n' <==>
|
||||
space_col_align : second->orig_line is 5, orig_col is 12 [FPAREN_CLOSE/FUNC_CTOR_VAR], text() ')', [CallStack]
|
||||
do_space : orig_line is 5, orig_col is 11, first->text() 'n', type is WORD
|
||||
do_space : first->orig_line is 5, first->orig_col is 11, first->text() is 'n', [WORD/NONE] <===>
|
||||
second->orig_line is 5, second->orig_col is 12, second->text() is ')', [FPAREN_CLOSE/FUNC_CTOR_VAR] : rule sp_inside_fparen[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 5
|
||||
space_col_align : => second->orig_line is 5
|
||||
space_col_align : => first->text() is 'n'
|
||||
space_col_align : => second->text() is ')'
|
||||
space_col_align : => first->orig_col is 11
|
||||
space_col_align : => second->orig_col is 12
|
||||
space_col_align : => first->len() is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 5, orig_col is 12, [FPAREN_CLOSE/FUNC_CTOR_VAR], text() ')' <==>
|
||||
space_col_align : second->orig_line is 5, orig_col is 13 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 5, orig_col is 12, first->text() ')', type is FPAREN_CLOSE
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 6, orig_col is 1, [BRACE_OPEN/FUNC_CLASS_DEF], text() '{' <==>
|
||||
space_col_align : second->orig_line is 6, orig_col is 2 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 6, orig_col is 1, first->text() '{', type is BRACE_OPEN
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 7, orig_col is 1, [BRACE_CLOSE/FUNC_CLASS_DEF], text() '}' <==>
|
||||
space_col_align : second->orig_line is 7, orig_col is 2 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 7, orig_col is 1, first->text() '}', type is BRACE_CLOSE
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 9, orig_col is 1, [DESTRUCTOR/FUNC_CLASS_DEF], text() '~' <==>
|
||||
space_col_align : second->orig_line is 9, orig_col is 2 [FUNC_CLASS_DEF/DESTRUCTOR], text() 'TelegramIndex', [CallStack]
|
||||
do_space : orig_line is 9, orig_col is 1, first->text() '~', type is DESTRUCTOR
|
||||
do_space : first->orig_line is 9, first->orig_col is 1, first->text() is '~', [DESTRUCTOR/FUNC_CLASS_DEF] <===>
|
||||
second->orig_line is 9, second->orig_col is 2, second->text() is 'TelegramIndex', [FUNC_CLASS_DEF/DESTRUCTOR] : rule REMOVE[ ]
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 9, orig_col is 2, [FUNC_CLASS_DEF/DESTRUCTOR], text() 'TelegramIndex' <==>
|
||||
space_col_align : second->orig_line is 9, orig_col is 15 [FPAREN_OPEN/FUNC_CLASS_DEF], text() '(', [CallStack]
|
||||
do_space : orig_line is 9, orig_col is 2, first->text() 'TelegramIndex', type is FUNC_CLASS_DEF
|
||||
do_space : first->orig_line is 9, first->orig_col is 2, first->text() is 'TelegramIndex', [FUNC_CLASS_DEF/DESTRUCTOR] <===>
|
||||
second->orig_line is 9, second->orig_col is 15, second->text() is '(', [FPAREN_OPEN/FUNC_CLASS_DEF] : rule sp_func_class_paren[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 13
|
||||
space_col_align : => coldiff is 13
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 9
|
||||
space_col_align : => second->orig_line is 9
|
||||
space_col_align : => first->text() is 'TelegramIndex'
|
||||
space_col_align : => second->text() is '('
|
||||
space_col_align : => first->orig_col is 2
|
||||
space_col_align : => second->orig_col is 15
|
||||
space_col_align : => first->len() is 13
|
||||
space_col_align : => coldiff is 13
|
||||
space_col_align : first->orig_line is 9, orig_col is 15, [FPAREN_OPEN/FUNC_CLASS_DEF], text() '(' <==>
|
||||
space_col_align : second->orig_line is 9, orig_col is 16 [FPAREN_CLOSE/FUNC_CLASS_DEF], text() ')', [CallStack]
|
||||
do_space : orig_line is 9, orig_col is 15, first->text() '(', type is FPAREN_OPEN
|
||||
do_space : first->orig_line is 9, first->orig_col is 15, first->text() is '(', [FPAREN_OPEN/FUNC_CLASS_DEF] <===>
|
||||
second->orig_line is 9, second->orig_col is 16, second->text() is ')', [FPAREN_CLOSE/FUNC_CLASS_DEF] : rule sp_inside_fparens[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 9
|
||||
space_col_align : => second->orig_line is 9
|
||||
space_col_align : => first->text() is '('
|
||||
space_col_align : => second->text() is ')'
|
||||
space_col_align : => first->orig_col is 15
|
||||
space_col_align : => second->orig_col is 16
|
||||
space_col_align : => first->len() is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 9, orig_col is 16, [FPAREN_CLOSE/FUNC_CLASS_DEF], text() ')' <==>
|
||||
space_col_align : second->orig_line is 9, orig_col is 17 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 9, orig_col is 16, first->text() ')', type is FPAREN_CLOSE
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 10, orig_col is 1, [BRACE_OPEN/FUNC_CLASS_DEF], text() '{' <==>
|
||||
space_col_align : second->orig_line is 10, orig_col is 2 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 10, orig_col is 1, first->text() '{', type is BRACE_OPEN
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 11, orig_col is 1, [BRACE_CLOSE/FUNC_CLASS_DEF], text() '}' <==>
|
||||
space_col_align : second->orig_line is 11, orig_col is 2 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 11, orig_col is 1, first->text() '}', type is BRACE_CLOSE
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 13, orig_col is 1, [QUALIFIER/NONE], text() 'const' <==>
|
||||
space_col_align : second->orig_line is 13, orig_col is 7 [TYPE/NONE], text() 'char', [CallStack]
|
||||
do_space : orig_line is 13, orig_col is 1, first->text() 'const', type is QUALIFIER
|
||||
do_space : first->orig_line is 13, first->orig_col is 1, first->text() is 'const', [QUALIFIER/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 7, second->text() is 'char', [TYPE/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'const' and 'char'>space_col_align : av is force
|
||||
space_col_align : len is 5
|
||||
space_col_align : => coldiff is 5
|
||||
space_col_align : => av is FORCE
|
||||
space_col_align : => coldiff is 6
|
||||
space_col_align : first->orig_line is 13, orig_col is 7, [TYPE/NONE], text() 'char' <==>
|
||||
space_col_align : second->orig_line is 13, orig_col is 11 [PTR_TYPE/NONE], text() '*', [CallStack]
|
||||
do_space : orig_line is 13, orig_col is 7, first->text() 'char', type is TYPE
|
||||
do_space : first->orig_line is 13, first->orig_col is 7, first->text() is 'char', [TYPE/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 11, second->text() is '*', [PTR_TYPE/NONE] : rule IGNORE[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 4
|
||||
space_col_align : => coldiff is 4
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 13
|
||||
space_col_align : => second->orig_line is 13
|
||||
space_col_align : => first->text() is 'char'
|
||||
space_col_align : => second->text() is '*'
|
||||
space_col_align : => first->orig_col is 7
|
||||
space_col_align : => second->orig_col is 11
|
||||
space_col_align : => first->len() is 4
|
||||
space_col_align : => coldiff is 4
|
||||
space_col_align : first->orig_line is 13, orig_col is 11, [PTR_TYPE/NONE], text() '*' <==>
|
||||
space_col_align : second->orig_line is 13, orig_col is 13 [QUALIFIER/NONE], text() 'const', [CallStack]
|
||||
do_space : orig_line is 13, orig_col is 11, first->text() '*', type is PTR_TYPE
|
||||
do_space : first->orig_line is 13, first->orig_col is 11, first->text() is '*', [PTR_TYPE/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 13, second->text() is 'const', [QUALIFIER/NONE] : rule IGNORE[ ]
|
||||
space_col_align : av is ignore
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is IGNORE
|
||||
space_col_align : => first->orig_line is 13
|
||||
space_col_align : => second->orig_line is 13
|
||||
space_col_align : => first->text() is '*'
|
||||
space_col_align : => second->text() is 'const'
|
||||
space_col_align : => first->orig_col is 11
|
||||
space_col_align : => second->orig_col is 13
|
||||
space_col_align : => first->len() is 1
|
||||
space_col_align : => coldiff is 2
|
||||
space_col_align : first->orig_line is 13, orig_col is 13, [QUALIFIER/NONE], text() 'const' <==>
|
||||
space_col_align : second->orig_line is 13, orig_col is 19 [WORD/NONE], text() 'pTelName', [CallStack]
|
||||
do_space : orig_line is 13, orig_col is 13, first->text() 'const', type is QUALIFIER
|
||||
do_space : first->orig_line is 13, first->orig_col is 13, first->text() is 'const', [QUALIFIER/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 19, second->text() is 'pTelName', [WORD/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'const' and 'pTelName'>space_col_align : av is force
|
||||
space_col_align : len is 5
|
||||
space_col_align : => coldiff is 5
|
||||
space_col_align : => av is FORCE
|
||||
space_col_align : => coldiff is 6
|
||||
space_col_align : first->orig_line is 13, orig_col is 19, [WORD/NONE], text() 'pTelName' <==>
|
||||
space_col_align : second->orig_line is 13, orig_col is 27 [SEMICOLON/NONE], text() ';', [CallStack]
|
||||
do_space : orig_line is 13, orig_col is 19, first->text() 'pTelName', type is WORD
|
||||
do_space : first->orig_line is 13, first->orig_col is 19, first->text() is 'pTelName', [WORD/NONE] <===>
|
||||
second->orig_line is 13, second->orig_col is 27, second->text() is ';', [SEMICOLON/NONE] : rule sp_before_semi[ ]
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 8
|
||||
space_col_align : => coldiff is 8
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 8
|
||||
space_col_align : first->orig_line is 13, orig_col is 27, [SEMICOLON/NONE], text() ';' <==>
|
||||
space_col_align : second->orig_line is 13, orig_col is 28 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 13, orig_col is 27, first->text() ';', type is SEMICOLON
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : first->orig_line is 14, orig_col is 1, [TYPE/NONE], text() 'unsigned' <==>
|
||||
space_col_align : second->orig_line is 14, orig_col is 10 [TYPE/NONE], text() 'long', [CallStack]
|
||||
do_space : orig_line is 14, orig_col is 1, first->text() 'unsigned', type is TYPE
|
||||
do_space : first->orig_line is 14, first->orig_col is 1, first->text() is 'unsigned', [TYPE/NONE] <===>
|
||||
second->orig_line is 14, second->orig_col is 10, second->text() is 'long', [TYPE/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'unsigned' and 'long'>space_col_align : av is force
|
||||
space_col_align : len is 8
|
||||
space_col_align : => coldiff is 8
|
||||
space_col_align : => av is FORCE
|
||||
space_col_align : => coldiff is 9
|
||||
space_col_align : first->orig_line is 14, orig_col is 10, [TYPE/NONE], text() 'long' <==>
|
||||
space_col_align : second->orig_line is 14, orig_col is 15 [WORD/NONE], text() 'nTelIndex', [CallStack]
|
||||
do_space : orig_line is 14, orig_col is 10, first->text() 'long', type is TYPE
|
||||
do_space : first->orig_line is 14, first->orig_col is 10, first->text() is 'long', [TYPE/NONE] <===>
|
||||
second->orig_line is 14, second->orig_col is 15, second->text() is 'nTelIndex', [WORD/NONE] : rule sp_after_type[ ]
|
||||
ensure_force_space : <force between 'long' and 'nTelIndex'>space_col_align : av is force
|
||||
space_col_align : len is 4
|
||||
space_col_align : => coldiff is 4
|
||||
space_col_align : => av is FORCE
|
||||
space_col_align : => coldiff is 5
|
||||
space_col_align : first->orig_line is 14, orig_col is 15, [WORD/NONE], text() 'nTelIndex' <==>
|
||||
space_col_align : second->orig_line is 14, orig_col is 24 [SEMICOLON/NONE], text() ';', [CallStack]
|
||||
do_space : orig_line is 14, orig_col is 15, first->text() 'nTelIndex', type is WORD
|
||||
do_space : first->orig_line is 14, first->orig_col is 15, first->text() is 'nTelIndex', [WORD/NONE] <===>
|
||||
second->orig_line is 14, second->orig_col is 24, second->text() is ';', [SEMICOLON/NONE] : rule sp_before_semi[ ]
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 9
|
||||
space_col_align : => coldiff is 9
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 9
|
||||
space_col_align : first->orig_line is 14, orig_col is 24, [SEMICOLON/NONE], text() ';' <==>
|
||||
space_col_align : second->orig_line is 14, orig_col is 25 [NEWLINE/NONE], text() '', [CallStack]
|
||||
do_space : orig_line is 14, orig_col is 24, first->text() ';', type is SEMICOLON
|
||||
space_col_align : av is remove
|
||||
space_col_align : len is 1
|
||||
space_col_align : => coldiff is 1
|
||||
space_col_align : => av is REMOVE
|
||||
space_col_align : => coldiff is 1
|
@ -0,0 +1,23 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
||||
<title>Uncrustify: where do the Spaces options work</title>
|
||||
</head>
|
||||
<body lang="en-US">
|
||||
<p>
|
||||
</p>
|
||||
<pre>
|
||||
{
|
||||
a<a title="1,sp_assign"><font color="red">M</font></a>=<a title="2,69,sp_assign"><font color="red">M</font></a>b<a title="3,70,75,sp_arith"><font color="red">M</font></a>+<a title="4,71,76,80,sp_arith"><font color="red">M</font></a>111<a title="5,72,77,81,84,sp_arith"><font color="red">M</font></a>-<a title="6,73,78,82,85,87,sp_arith"><font color="red">M</font></a>55<a title="7,74,79,83,86,88,89,sp_before_semi"><font color="red">M</font></a>;
|
||||
}
|
||||
template<a title="8,sp_before_angle"><font color="red">M</font></a><<a title="9,90,sp_inside_angle"><font color="red">M</font></a>typename<a title="10,91,96,ADD from add_space_table"><font color="red">M</font></a>... A<a title="11,92,97,101,sp_before_comma"><font color="red">M</font></a>,<a title="12,93,98,102,105,sp_after_comma"><font color="red">M</font></a>int<a title="13,94,99,103,106,108,sp_type_ellipsis"><font color="red">M</font></a>... B<a title="14,95,100,104,107,109,110,sp_inside_angle"><font color="red">M</font></a>>
|
||||
struct<a title="15,ADD from add_space_table"><font color="red">M</font></a>foo1<a title="16,111,sp_after_type"><font color="red">M</font></a>:<a title="17,112,128,ADD from add_space_table"><font color="red">M</font></a>foo1<a title="18,113,129,144,sp_before_angle"><font color="red">M</font></a><<a title="19,114,130,145,159,sp_inside_angle"><font color="red">M</font></a>A<a title="20,115,131,146,160,173,sp_type_ellipsis"><font color="red">M</font></a>...<a title="21,116,132,147,161,174,186,sp_before_comma"><font color="red">M</font></a>,<a title="22,117,133,148,162,175,187,198,sp_after_comma"><font color="red">M</font></a>(<a title="23,118,134,149,163,176,188,199,209,sp_inside_paren"><font color="red">M</font></a>sizeof<a title="24,119,135,150,164,177,189,200,210,219,sp_sizeof_ellipsis"><font color="red">M</font></a>...<a title="25,120,136,151,165,178,190,201,211,220,228,sp_sizeof_ellipsis_paren"><font color="red">M</font></a>(<a title="26,121,137,152,166,179,191,202,212,221,229,236,sp_inside_paren"><font color="red">M</font></a>A<a title="27,122,138,153,167,180,192,203,213,222,230,237,243,sp_inside_paren"><font color="red">M</font></a>)<a title="28,123,139,154,168,181,193,204,214,223,231,238,244,249,sp_arith"><font color="red">M</font></a>+<a title="29,124,140,155,169,182,194,205,215,224,232,239,245,250,254,sp_arith"><font color="red">M</font></a>B<a title="30,125,141,156,170,183,195,206,216,225,233,240,246,251,255,258,sp_inside_paren"><font color="red">M</font></a>)<a title="31,126,142,157,171,184,196,207,217,226,234,241,247,252,256,259,261,sp_paren_ellipsis"><font color="red">M</font></a>...<a title="32,127,143,158,172,185,197,208,218,227,235,242,248,253,257,260,262,263,sp_inside_angle"><font color="red">M</font></a>>
|
||||
{
|
||||
foo1<a title="33,51,sp_func_class_paren"><font color="red">M</font></a>(<a title="34,52,264,sp_inside_fparens"><font color="red">M</font></a>)<a title="35,53,265,266,sp_fparen_brace"><font color="red">M</font></a>{
|
||||
int<a title="36,54,sp_after_type"><font color="red">M</font></a>x<a title="37,55,267,sp_assign"><font color="red">M</font></a>=<a title="38,56,268,274,sp_assign"><font color="red">M</font></a>sizeof<a title="39,57,269,275,280,sp_sizeof_ellipsis"><font color="red">M</font></a>...<a title="40,58,270,276,281,285,sp_sizeof_ellipsis_paren"><font color="red">M</font></a>(<a title="41,59,271,277,282,286,289,sp_inside_paren"><font color="red">M</font></a>A<a title="42,60,272,278,283,287,290,292,sp_inside_paren"><font color="red">M</font></a>)<a title="43,61,273,279,284,288,291,293,294,sp_before_semi"><font color="red">M</font></a>;
|
||||
bool<a title="44,62,sp_after_type"><font color="red">M</font></a>b<a title="45,63,295,sp_assign"><font color="red">M</font></a>=<a title="46,64,296,300,sp_assign"><font color="red">M</font></a>x<a title="47,65,297,301,304,sp_compare"><font color="red">M</font></a>><a title="48,66,298,302,305,307,sp_compare"><font color="red">M</font></a>1<a title="49,67,299,303,306,308,309,sp_before_semi"><font color="red">M</font></a>;
|
||||
}
|
||||
}<a title="50,sp_before_semi"><font color="red">M</font></a>;
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
Can't render this file because it has a wrong number of fields in line 3.
|
@ -0,0 +1,692 @@
|
||||
|
||||
# option(s) with 'not default' value: 0
|
||||
#
|
||||
# -=====-
|
||||
# number of loops = 1
|
||||
# -=====-
|
||||
# language = CPP
|
||||
# -=====-
|
||||
# Line Tag Parent_type Type of the parent Columns Br/Lvl/pp Flag Nl Text
|
||||
# 1> COMMENT_MULTI| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 4/ 7/ 3][0/0/0][ 0][9-0] /** * the enum (and variable declarations thereof) could be of * the following forms: * * "enum type [: integral_type] { ... } [x, ...]" * "enum type [: integral_type]" * "enum class type [: integral_type] { ... } [x, ...]" * "enum class type [: integral_type]" * "enum [: integral_type] { ... } x, ..." */
|
||||
# 10> NEWLINE| NONE| PARENT_NOT_SET[ 7/ 7/ 4/ 0][0/0/0][ 0][2-0]
|
||||
# 12> COMMENT_MULTI| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 4/ 7/ 0][0/0/0][ 0][9-0] /** * the class/struct (and variable declarations thereof) could be of * the following forms: * * template<...> class/struct[<...>] [macros/attributes ...] type [: bases ...] { } * template<...> class/struct[<...>] [macros/attributes ...] type * class/struct[ [macros/attributes ...] type [: bases ...] { } [x, ...] * class/struct [macros/attributes ...] type [x, ...] * class/struct [macros/attributes ...] [: bases] { } x, ... */
|
||||
# 21> NEWLINE| NONE| PARENT_NOT_SET[ 7/ 7/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 23> PREPROC| PP_DEFINE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][1/1/0][ 2001c0001][0-0] #
|
||||
# 23> PP_DEFINE| NONE| PARENT_NOT_SET[ 2/ 2/ 8/ 0][1/1/0][ 20001][0-0] define
|
||||
# 23> MACRO_FUNC| NONE| PARENT_NOT_SET[ 9/ 9/ 16/ 1][1/1/0][ 80001][0-0] ALIGNAS
|
||||
# 23> FPAREN_OPEN| MACRO_FUNC| PARENT_NOT_SET[ 16/ 16/ 17/ 0][1/1/0][ 200000001][0-0] (
|
||||
# 23> WORD| NONE| PARENT_NOT_SET[ 17/ 17/ 31/ 0][1/2/0][ 80011][0-0] byte_alignment
|
||||
# 23> FPAREN_CLOSE| MACRO_FUNC| PARENT_NOT_SET[ 31/ 31/ 32/ 0][1/1/0][ 200000011][0-0] )
|
||||
# 23> ATTRIBUTE| NONE| PARENT_NOT_SET[ 33/ 33/ 46/ 1][1/1/0][ 1][0-0] __attribute__
|
||||
# 23> FPAREN_OPEN| ATTRIBUTE| PARENT_NOT_SET[ 46/ 46/ 47/ 0][1/1/0][ 200000001][0-0] (
|
||||
# 23> PAREN_OPEN| NONE| PARENT_NOT_SET[ 47/ 47/ 48/ 0][1/2/0][ 200080001][0-0] (
|
||||
# 23> FUNC_CALL| NONE| PARENT_NOT_SET[ 48/ 48/ 55/ 0][1/3/0][ 80001][0-0] aligned
|
||||
# 23> FPAREN_OPEN| FUNC_CALL| PARENT_NOT_SET[ 55/ 55/ 56/ 0][1/3/0][ 200000001][0-0] (
|
||||
# 23> WORD| NONE| PARENT_NOT_SET[ 56/ 56/ 70/ 0][1/4/0][ 80011][0-0] byte_alignment
|
||||
# 23> FPAREN_CLOSE| FUNC_CALL| PARENT_NOT_SET[ 70/ 70/ 71/ 0][1/3/0][ 200000011][0-0] )
|
||||
# 23> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 71/ 71/ 72/ 0][1/2/0][ 200000001][0-0] )
|
||||
# 23> FPAREN_CLOSE| ATTRIBUTE| PARENT_NOT_SET[ 72/ 72/ 73/ 0][1/1/0][ 200000001][0-0] )
|
||||
# 23> NEWLINE| NONE| PARENT_NOT_SET[ 73/ 73/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 25> PREPROC| PP_IF| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200100001][0-0] #
|
||||
# 25> PP_IF| NONE| PARENT_NOT_SET[ 2/ 2/ 4/ 0][0/0/1][ 20001][0-0] if
|
||||
# 25> PP_DEFINED| NONE| PARENT_NOT_SET[ 5/ 5/ 12/ 1][0/0/1][ 80001][0-0] defined
|
||||
# 25> PAREN_OPEN| NONE| PARENT_NOT_SET[ 13/ 13/ 14/ 1][0/0/1][ 200000001][0-0] (
|
||||
# 25> WORD| NONE| PARENT_NOT_SET[ 14/ 14/ 22/ 0][0/0/1][ 80001][0-0] __unix__
|
||||
# 25> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 22/ 22/ 23/ 0][0/0/1][ 200000001][0-0] )
|
||||
# 25> BOOL| NONE| PARENT_NOT_SET[ 24/ 24/ 26/ 1][0/0/1][ 200000001][0-0] ||
|
||||
# 25> PAREN_OPEN| NONE| PARENT_NOT_SET[ 27/ 27/ 28/ 1][0/0/1][ 200000001][0-0] (
|
||||
# 25> PP_DEFINED| NONE| PARENT_NOT_SET[ 28/ 28/ 35/ 0][0/0/1][ 80001][0-0] defined
|
||||
# 25> PAREN_OPEN| NONE| PARENT_NOT_SET[ 36/ 36/ 37/ 1][0/0/1][ 200000001][0-0] (
|
||||
# 25> WORD| NONE| PARENT_NOT_SET[ 37/ 37/ 46/ 0][0/0/1][ 80001][0-0] __APPLE__
|
||||
# 25> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 46/ 46/ 47/ 0][0/0/1][ 200000001][0-0] )
|
||||
# 25> BOOL| NONE| PARENT_NOT_SET[ 48/ 48/ 50/ 1][0/0/1][ 200000001][0-0] &&
|
||||
# 25> PP_DEFINED| NONE| PARENT_NOT_SET[ 51/ 51/ 58/ 1][0/0/1][ 1][0-0] defined
|
||||
# 25> PAREN_OPEN| NONE| PARENT_NOT_SET[ 59/ 59/ 60/ 1][0/0/1][ 200000001][0-0] (
|
||||
# 25> WORD| NONE| PARENT_NOT_SET[ 60/ 60/ 68/ 0][0/0/1][ 80001][0-0] __MACH__
|
||||
# 25> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 68/ 68/ 69/ 0][0/0/1][ 200000001][0-0] )
|
||||
# 25> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 69/ 69/ 70/ 0][0/0/1][ 200000001][0-0] )
|
||||
# 25> NEWLINE| NONE| PARENT_NOT_SET[ 70/ 70/ 1/ 0][0/0/1][ 0][1-0]
|
||||
# 26> PREPROC| PP_DEFINE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][1/1/1][ 2001c0001][0-0] #
|
||||
# 26> PP_DEFINE| NONE| PARENT_NOT_SET[ 2/ 2/ 8/ 0][1/1/1][ 20001][0-0] define
|
||||
# 26> MACRO| NONE| PARENT_NOT_SET[ 9/ 9/ 19/ 1][1/1/1][ 20001][0-0] API_EXPORT
|
||||
# 26> ATTRIBUTE| NONE| PARENT_NOT_SET[ 20/ 20/ 33/ 1][1/1/1][ 80001][0-0] __attribute__
|
||||
# 26> FPAREN_OPEN| ATTRIBUTE| PARENT_NOT_SET[ 34/ 34/ 35/ 1][1/1/1][ 2000c0001][0-0] (
|
||||
# 26> PAREN_OPEN| NONE| PARENT_NOT_SET[ 35/ 35/ 36/ 0][1/2/1][ 200080001][0-0] (
|
||||
# 26> FUNC_CALL| NONE| PARENT_NOT_SET[ 36/ 36/ 46/ 0][1/3/1][ 80001][0-0] visibility
|
||||
# 26> FPAREN_OPEN| FUNC_CALL| PARENT_NOT_SET[ 46/ 46/ 47/ 0][1/3/1][ 200000001][0-0] (
|
||||
# 26> STRING| PP_INCLUDE| PARENT_NOT_SET[ 47/ 47/ 56/ 0][1/4/1][ 80011][0-0] "default"
|
||||
# 26> FPAREN_CLOSE| FUNC_CALL| PARENT_NOT_SET[ 56/ 56/ 57/ 0][1/3/1][ 200000011][0-0] )
|
||||
# 26> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 57/ 57/ 58/ 0][1/2/1][ 200000001][0-0] )
|
||||
# 26> FPAREN_CLOSE| ATTRIBUTE| PARENT_NOT_SET[ 58/ 58/ 59/ 0][1/1/1][ 200000001][0-0] )
|
||||
# 26> NEWLINE| NONE| PARENT_NOT_SET[ 59/ 59/ 1/ 0][0/0/1][ 0][1-0]
|
||||
# 27> PREPROC| PP_ELSE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200100001][0-0] #
|
||||
# 27> PP_ELSE| NONE| PP_IF[ 2/ 2/ 6/ 0][0/0/1][ 20001][0-0] elif
|
||||
# 27> PP_DEFINED| NONE| PARENT_NOT_SET[ 7/ 7/ 14/ 1][0/0/1][ a0001][0-0] defined
|
||||
# 27> WORD| NONE| PARENT_NOT_SET[ 15/ 15/ 21/ 1][0/0/1][ 1][0-0] _WIN32
|
||||
# 27> NEWLINE| NONE| PARENT_NOT_SET[ 21/ 21/ 1/ 0][0/0/1][ 0][1-0]
|
||||
# 28> PREPROC| PP_DEFINE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][1/1/1][ 2001c0001][0-0] #
|
||||
# 28> PP_DEFINE| NONE| PARENT_NOT_SET[ 2/ 2/ 8/ 0][1/1/1][ 20001][0-0] define
|
||||
# 28> MACRO| NONE| PARENT_NOT_SET[ 9/ 9/ 19/ 1][1/1/1][ 20001][0-0] API_EXPORT
|
||||
# 28> DECLSPEC| NONE| PARENT_NOT_SET[ 20/ 20/ 30/ 1][1/1/1][ c0001][0-0] __declspec
|
||||
# 28> PAREN_OPEN| DECLSPEC| PARENT_NOT_SET[ 30/ 30/ 31/ 0][1/1/1][ 200000001][0-0] (
|
||||
# 28> WORD| NONE| PARENT_NOT_SET[ 31/ 31/ 40/ 0][1/2/1][ 80001][0-0] dllexport
|
||||
# 28> PAREN_CLOSE| DECLSPEC| PARENT_NOT_SET[ 40/ 40/ 41/ 0][1/1/1][ 200000001][0-0] )
|
||||
# 28> NEWLINE| NONE| PARENT_NOT_SET[ 41/ 41/ 1/ 0][0/0/1][ 0][1-0]
|
||||
# 29> PREPROC| PP_ELSE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200100001][0-0] #
|
||||
# 29> PP_ELSE| NONE| PP_IF[ 2/ 2/ 6/ 0][0/0/1][ 1][0-0] else
|
||||
# 29> NEWLINE| NONE| PARENT_NOT_SET[ 6/ 6/ 1/ 0][0/0/1][ 0][1-0]
|
||||
# 30> PREPROC| PP_DEFINE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][1/1/1][ 2001c0001][0-0] #
|
||||
# 30> PP_DEFINE| NONE| PARENT_NOT_SET[ 2/ 2/ 8/ 0][1/1/1][ 20001][0-0] define
|
||||
# 30> MACRO| NONE| PARENT_NOT_SET[ 9/ 9/ 19/ 1][1/1/1][ 1][0-0] API_EXPORT
|
||||
# 30> NEWLINE| NONE| PARENT_NOT_SET[ 19/ 19/ 1/ 0][0/0/1][ 0][1-0]
|
||||
# 31> PREPROC| PP_ENDIF| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200100001][0-0] #
|
||||
# 31> PP_ENDIF| NONE| PP_IF[ 2/ 2/ 7/ 0][0/0/0][ 1][0-0] endif
|
||||
# 31> NEWLINE| NONE| PARENT_NOT_SET[ 7/ 7/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 33> NAMESPACE| NONE| PARENT_NOT_SET[ 1/ 1/ 10/ 0][0/0/0][ e0000][0-0] namespace
|
||||
# 33> WORD| NAMESPACE| PARENT_NOT_SET[ 11/ 11/ 26/ 1][0/0/0][ 0][0-0] outer_namespace
|
||||
# 33> NEWLINE| NONE| PARENT_NOT_SET[ 26/ 26/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 34> BRACE_OPEN| NAMESPACE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200000000][0-0] {
|
||||
# 34> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 2/ 1/ 0][1/1/0][ 1000][2-0]
|
||||
# 36> NAMESPACE| NONE| PARENT_NOT_SET[ 1/ 1/ 10/ 0][1/1/0][ e1000][0-0] namespace
|
||||
# 36> WORD| NAMESPACE| PARENT_NOT_SET[ 11/ 11/ 26/ 1][1/1/0][ 1000][0-0] inner_namespace
|
||||
# 36> NEWLINE| NONE| PARENT_NOT_SET[ 26/ 26/ 1/ 0][1/1/0][ 1000][1-0]
|
||||
# 37> BRACE_OPEN| NAMESPACE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][1/1/0][ 200001000][0-0] {
|
||||
# 37> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 2/ 1/ 0][2/2/0][ 1000][2-0]
|
||||
# 39> CLASS| NONE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][2/2/0][ e1000][0-0] class
|
||||
# 39> TYPE| CLASS| PARENT_NOT_SET[ 7/ 7/ 12/ 1][2/2/0][ 1000][0-0] Base1
|
||||
# 39> BRACE_OPEN| CLASS| PARENT_NOT_SET[ 13/ 13/ 14/ 1][2/2/0][ 2c0001400][0-0] {
|
||||
# 39> BRACE_CLOSE| CLASS| PARENT_NOT_SET[ 15/ 15/ 16/ 1][2/2/0][ 2c0001400][0-0] }
|
||||
# 39> SEMICOLON| CLASS| PARENT_NOT_SET[ 16/ 16/ 17/ 0][2/2/0][ 200000000][0-0] ;
|
||||
# 39> NEWLINE| NONE| PARENT_NOT_SET[ 17/ 17/ 1/ 0][2/2/0][ 0][2-0]
|
||||
# 41> TEMPLATE| NONE| PARENT_NOT_SET[ 1/ 1/ 9/ 0][2/2/0][ c0000][0-0] template
|
||||
# 41> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 9/ 9/ 10/ 0][2/2/0][ 200000040][0-0] <
|
||||
# 41> TYPENAME| NONE| PARENT_NOT_SET[ 10/ 10/ 18/ 0][2/3/0][ 80040][0-0] typename
|
||||
# 41> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 18/ 18/ 19/ 0][2/2/0][ 200000040][0-0] >
|
||||
# 41> CLASS| TEMPLATE| PARENT_NOT_SET[ 20/ 20/ 25/ 1][2/2/0][ a0000][0-0] class
|
||||
# 41> TYPE| CLASS| PARENT_NOT_SET[ 26/ 26/ 31/ 1][2/2/0][ 0][0-0] Base2
|
||||
# 41> BRACE_OPEN| CLASS| PARENT_NOT_SET[ 32/ 32/ 33/ 1][2/2/0][ 2c0000400][0-0] {
|
||||
# 41> BRACE_CLOSE| CLASS| PARENT_NOT_SET[ 34/ 34/ 35/ 1][2/2/0][ 2c0000400][0-0] }
|
||||
# 41> SEMICOLON| CLASS| PARENT_NOT_SET[ 35/ 35/ 36/ 0][2/2/0][ 200000000][0-0] ;
|
||||
# 41> NEWLINE| NONE| PARENT_NOT_SET[ 36/ 36/ 1/ 0][2/2/0][ 0][2-0]
|
||||
# 43> BRACE_CLOSE| NAMESPACE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][1/1/0][ 200000000][0-0] }
|
||||
# 43> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 2/ 1/ 0][1/1/0][ 0][2-0]
|
||||
# 45> BRACE_CLOSE| NAMESPACE| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200000000][0-0] }
|
||||
# 45> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 2/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 47> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 82/ 0][0/0/0][ 0][0-0] // template<...> class/struct[<...>] [macros/attributes ...] type : bases ... { }
|
||||
# 47> NEWLINE| NONE| PARENT_NOT_SET[ 82/ 82/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 48> TEMPLATE| NONE| PARENT_NOT_SET[ 1/ 1/ 9/ 0][0/0/0][ c0000][0-0] template
|
||||
# 48> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 9/ 9/ 10/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 48> TYPENAME| NONE| PARENT_NOT_SET[ 10/ 10/ 18/ 0][0/1/0][ 80040][0-0] typename
|
||||
# 48> COMMA| NONE| PARENT_NOT_SET[ 18/ 18/ 19/ 0][0/1/0][ 200000040][0-0] ,
|
||||
# 48> TYPENAME| NONE| PARENT_NOT_SET[ 20/ 20/ 28/ 1][0/1/0][ 80040][0-0] typename
|
||||
# 48> ELLIPSIS| NONE| PARENT_NOT_SET[ 29/ 29/ 32/ 1][0/1/0][ 200000040][0-0] ...
|
||||
# 48> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 32/ 32/ 33/ 0][0/0/0][ 200000040][0-0] >
|
||||
# 48> NEWLINE| NONE| PARENT_NOT_SET[ 33/ 33/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 49> CLASS| TEMPLATE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][0/0/0][ a0000][0-0] class
|
||||
# 49> WORD| NONE| PARENT_NOT_SET[ 7/ 7/ 17/ 1][0/0/0][ 20000][0-0] API_EXPORT
|
||||
# 49> ATTRIBUTE| NONE| PARENT_NOT_SET[ 18/ 18/ 31/ 1][0/0/0][ 0][0-0] __attribute__
|
||||
# 49> FPAREN_OPEN| ATTRIBUTE| PARENT_NOT_SET[ 31/ 31/ 32/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 49> PAREN_OPEN| NONE| PARENT_NOT_SET[ 32/ 32/ 33/ 0][0/1/0][ 200080000][0-0] (
|
||||
# 49> WORD| NONE| PARENT_NOT_SET[ 33/ 33/ 47/ 0][0/2/0][ 80000][0-0] __deprecated__
|
||||
# 49> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 47/ 47/ 48/ 0][0/1/0][ 200000000][0-0] )
|
||||
# 49> FPAREN_CLOSE| ATTRIBUTE| PARENT_NOT_SET[ 48/ 48/ 49/ 0][0/0/0][ 200000000][0-0] )
|
||||
# 49> MACRO_FUNC_CALL| NONE| PARENT_NOT_SET[ 50/ 50/ 57/ 1][0/0/0][ 0][0-0] ALIGNAS
|
||||
# 49> FPAREN_OPEN| MACRO_FUNC_CALL| PARENT_NOT_SET[ 57/ 57/ 58/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 49> NUMBER| NONE| PARENT_NOT_SET[ 58/ 58/ 59/ 0][0/1/0][ 80000][0-0] 4
|
||||
# 49> FPAREN_CLOSE| MACRO_FUNC_CALL| PARENT_NOT_SET[ 59/ 59/ 60/ 0][0/0/0][ 200000000][0-0] )
|
||||
# 49> TYPE| CLASS| PARENT_NOT_SET[ 61/ 61/ 63/ 1][0/0/0][ 0][0-0] c1
|
||||
# 49> NEWLINE| NONE| PARENT_NOT_SET[ 63/ 63/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 50> CLASS_COLON| CLASS| PARENT_NOT_SET[ 9/ 1/ 2/ 0][0/0/0][ 200000800][0-0] :
|
||||
# 50> QUALIFIER| NONE| PARENT_NOT_SET[ 11/ 3/ 9/ 1][0/0/0][ e0800][0-0] public
|
||||
# 50> TYPE| NONE| PARENT_NOT_SET[ 18/ 10/ 25/ 1][0/0/0][ 800][0-0] outer_namespace
|
||||
# 50> DC_MEMBER| NONE| PARENT_NOT_SET[ 33/ 25/ 27/ 0][0/0/0][ 200000800][0-0] ::
|
||||
# 50> TYPE| NONE| PARENT_NOT_SET[ 35/ 27/ 42/ 0][0/0/0][ 800][0-0] inner_namespace
|
||||
# 50> DC_MEMBER| NONE| PARENT_NOT_SET[ 50/ 42/ 44/ 0][0/0/0][ 200000800][0-0] ::
|
||||
# 50> TYPE| NONE| PARENT_NOT_SET[ 52/ 44/ 49/ 0][0/0/0][ 800][0-0] Base1
|
||||
# 50> COMMA| NONE| PARENT_NOT_SET[ 57/ 49/ 50/ 0][0/0/0][ 200000800][0-0] ,
|
||||
# 50> NEWLINE| NONE| PARENT_NOT_SET[ 58/ 50/ 3/ 0][0/0/0][ 0][1-0]
|
||||
# 51> QUALIFIER| NONE| PARENT_NOT_SET[ 9/ 3/ 9/ 0][0/0/0][ a0800][0-0] public
|
||||
# 51> TYPE| NONE| PARENT_NOT_SET[ 16/ 10/ 25/ 1][0/0/0][ 800][0-0] outer_namespace
|
||||
# 51> DC_MEMBER| NONE| PARENT_NOT_SET[ 31/ 25/ 27/ 0][0/0/0][ 200000800][0-0] ::
|
||||
# 51> TYPE| NONE| PARENT_NOT_SET[ 33/ 27/ 42/ 0][0/0/0][ 800][0-0] inner_namespace
|
||||
# 51> DC_MEMBER| NONE| PARENT_NOT_SET[ 48/ 42/ 44/ 0][0/0/0][ 200000800][0-0] ::
|
||||
# 51> TYPE| NONE| PARENT_NOT_SET[ 50/ 44/ 49/ 0][0/0/0][ 800][0-0] Base2
|
||||
# 51> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 55/ 49/ 50/ 0][0/0/0][ 200000840][0-0] <
|
||||
# 51> TYPE| NONE| PARENT_NOT_SET[ 56/ 50/ 65/ 0][0/1/0][ 80840][0-0] outer_namespace
|
||||
# 51> DC_MEMBER| NONE| PARENT_NOT_SET[ 71/ 65/ 67/ 0][0/1/0][ 200000840][0-0] ::
|
||||
# 51> TYPE| NONE| PARENT_NOT_SET[ 73/ 67/ 82/ 0][0/1/0][ 840][0-0] inner_namespace
|
||||
# 51> DC_MEMBER| NONE| PARENT_NOT_SET[ 88/ 82/ 84/ 0][0/1/0][ 200000840][0-0] ::
|
||||
# 51> TYPE| NONE| PARENT_NOT_SET[ 90/ 84/ 89/ 0][0/1/0][ 840][0-0] Base1
|
||||
# 51> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 95/ 89/ 90/ 0][0/0/0][ 200000840][0-0] >
|
||||
# 51> NEWLINE| NONE| PARENT_NOT_SET[ 96/ 90/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 52> BRACE_OPEN| CLASS| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 280080400][0-0] {
|
||||
# 52> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 2/ 1/ 0][1/1/0][ 400][2-0]
|
||||
# 54> BRACE_CLOSE| CLASS| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 280000400][0-0] }
|
||||
# 54> SEMICOLON| CLASS| PARENT_NOT_SET[ 2/ 2/ 3/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 54> NEWLINE| NONE| PARENT_NOT_SET[ 3/ 3/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 56> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 70/ 0][0/0/0][ 0][0-0] // template<...> class/struct[<...>] [macros/attributes ...] type { }
|
||||
# 56> NEWLINE| NONE| PARENT_NOT_SET[ 70/ 70/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 57> TEMPLATE| NONE| PARENT_NOT_SET[ 1/ 1/ 9/ 0][0/0/0][ c0000][0-0] template
|
||||
# 57> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 9/ 9/ 10/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 57> TYPENAME| NONE| PARENT_NOT_SET[ 10/ 10/ 18/ 0][0/1/0][ 80040][0-0] typename
|
||||
# 57> COMMA| NONE| PARENT_NOT_SET[ 18/ 18/ 19/ 0][0/1/0][ 200000040][0-0] ,
|
||||
# 57> TYPENAME| NONE| PARENT_NOT_SET[ 20/ 20/ 28/ 1][0/1/0][ 80040][0-0] typename
|
||||
# 57> ELLIPSIS| NONE| PARENT_NOT_SET[ 29/ 29/ 32/ 1][0/1/0][ 200000040][0-0] ...
|
||||
# 57> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 32/ 32/ 33/ 0][0/0/0][ 200000040][0-0] >
|
||||
# 57> NEWLINE| NONE| PARENT_NOT_SET[ 33/ 33/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 58> CLASS| TEMPLATE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][0/0/0][ a0000][0-0] class
|
||||
# 58> WORD| NONE| PARENT_NOT_SET[ 7/ 7/ 17/ 1][0/0/0][ 20000][0-0] API_EXPORT
|
||||
# 58> TYPE| CLASS| PARENT_NOT_SET[ 18/ 18/ 20/ 1][0/0/0][ 0][0-0] c2
|
||||
# 58> NEWLINE| NONE| PARENT_NOT_SET[ 20/ 20/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 59> BRACE_OPEN| CLASS| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200000400][0-0] {
|
||||
# 59> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 2/ 1/ 0][1/1/0][ 400][1-0]
|
||||
# 60> ACCESS| NONE| PARENT_NOT_SET[ 1/ 1/ 7/ 0][1/1/0][ c0400][0-0] public
|
||||
# 60> ACCESS_COLON| NONE| PARENT_NOT_SET[ 7/ 7/ 8/ 0][1/1/0][ 200000400][0-0] :
|
||||
# 60> NEWLINE| NONE| PARENT_NOT_SET[ 8/ 8/ 4/ 0][1/1/0][ 400][2-0]
|
||||
# 62> TEMPLATE| NONE| PARENT_NOT_SET[ 1/ 4/ 12/ 0][1/1/0][ c0400][0-0] template
|
||||
# 62> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 9/ 12/ 13/ 0][1/1/0][ 200000440][0-0] <
|
||||
# 62> TYPENAME| NONE| PARENT_NOT_SET[ 10/ 13/ 21/ 0][1/2/0][ a0440][0-0] typename
|
||||
# 62> TYPE| NONE| PARENT_NOT_SET[ 19/ 22/ 23/ 1][1/2/0][ 440][0-0] T
|
||||
# 62> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 20/ 23/ 24/ 0][1/1/0][ 200000440][0-0] >
|
||||
# 62> NEWLINE| NONE| PARENT_NOT_SET[ 21/ 24/ 4/ 0][1/1/0][ 400][1-0]
|
||||
# 63> STRUCT| TEMPLATE| PARENT_NOT_SET[ 1/ 4/ 10/ 0][1/1/0][ a0400][0-0] struct
|
||||
# 63> TYPE| STRUCT| PARENT_NOT_SET[ 8/ 11/ 22/ 1][1/1/0][ 400][0-0] inner_class
|
||||
# 63> NEWLINE| NONE| PARENT_NOT_SET[ 19/ 22/ 4/ 0][1/1/0][ 400][1-0]
|
||||
# 64> BRACE_OPEN| STRUCT| PARENT_NOT_SET[ 1/ 4/ 5/ 0][1/1/0][ 200000400][0-0] {
|
||||
# 64> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 5/ 7/ 0][2/2/0][ 402][1-0]
|
||||
# 65> QUALIFIER| NONE| PARENT_NOT_SET[ 9/ 7/ 13/ 0][2/2/0][ 8e0402][0-0] static
|
||||
# 65> TYPE| NONE| PARENT_NOT_SET[ 16/ 14/ 25/ 1][2/2/0][ 800402][0-0] inner_class
|
||||
# 65> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 27/ 25/ 26/ 0][2/2/0][ 200000442][0-0] <
|
||||
# 65> TYPE| NONE| PARENT_NOT_SET[ 28/ 26/ 27/ 0][2/3/0][ 80442][0-0] T
|
||||
# 65> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 29/ 27/ 28/ 0][2/2/0][ 200000442][0-0] >
|
||||
# 65> PTR_TYPE| NONE| PARENT_NOT_SET[ 31/ 29/ 30/ 1][2/2/0][ 200880402][0-0] *
|
||||
# 65> WORD| NONE| PARENT_NOT_SET[ 32/ 30/ 43/ 0][2/2/0][ 3080402][0-0] m_inner_class
|
||||
# 65> SEMICOLON| NONE| PARENT_NOT_SET[ 45/ 43/ 44/ 0][2/2/0][ 200000402][0-0] ;
|
||||
# 65> NEWLINE| NONE| PARENT_NOT_SET[ 46/ 44/ 4/ 0][2/2/0][ 402][1-0]
|
||||
# 66> BRACE_CLOSE| STRUCT| PARENT_NOT_SET[ 1/ 4/ 5/ 0][1/1/0][ 200000402][0-0] }
|
||||
# 66> SEMICOLON| STRUCT| PARENT_NOT_SET[ 2/ 5/ 6/ 0][1/1/0][ 200000400][0-0] ;
|
||||
# 66> NEWLINE| NONE| PARENT_NOT_SET[ 3/ 6/ 1/ 0][1/1/0][ 400][1-0]
|
||||
# 67> BRACE_CLOSE| CLASS| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200000400][0-0] }
|
||||
# 67> SEMICOLON| CLASS| PARENT_NOT_SET[ 2/ 2/ 3/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 67> NEWLINE| NONE| PARENT_NOT_SET[ 3/ 3/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 69> TEMPLATE| NONE| PARENT_NOT_SET[ 1/ 1/ 9/ 0][0/0/0][ c0000][0-0] template
|
||||
# 69> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 9/ 9/ 10/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 69> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 10/ 10/ 11/ 0][0/0/0][ 200080040][0-0] >
|
||||
# 69> TEMPLATE| NONE| PARENT_NOT_SET[ 12/ 12/ 20/ 1][0/0/0][ 80000][0-0] template
|
||||
# 69> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 20/ 20/ 21/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 69> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 21/ 21/ 22/ 0][0/0/0][ 200080040][0-0] >
|
||||
# 69> STRUCT| TEMPLATE| PARENT_NOT_SET[ 23/ 23/ 29/ 1][0/0/0][ a0000][0-0] struct
|
||||
# 69> WORD| NONE| PARENT_NOT_SET[ 30/ 30/ 40/ 1][0/0/0][ 20000][0-0] API_EXPORT
|
||||
# 69> TYPE| NONE| PARENT_NOT_SET[ 41/ 41/ 43/ 1][0/0/0][ 0][0-0] c2
|
||||
# 69> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 43/ 43/ 44/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 69> TYPE| NONE| PARENT_NOT_SET[ 44/ 44/ 47/ 0][0/1/0][ 80040][0-0] int
|
||||
# 69> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 47/ 47/ 48/ 0][0/0/0][ 200000040][0-0] >
|
||||
# 69> DC_MEMBER| NONE| PARENT_NOT_SET[ 48/ 48/ 50/ 0][0/0/0][ 200080000][0-0] ::
|
||||
# 69> TYPE| STRUCT| PARENT_NOT_SET[ 50/ 50/ 61/ 0][0/0/0][ 800000][0-0] inner_class
|
||||
# 69> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 61/ 61/ 62/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 69> TYPE| NONE| PARENT_NOT_SET[ 62/ 62/ 65/ 0][0/1/0][ 80040][0-0] int
|
||||
# 69> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 65/ 65/ 66/ 0][0/0/0][ 200000040][0-0] >
|
||||
# 69> PTR_TYPE| NONE| PARENT_NOT_SET[ 67/ 67/ 68/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 69> TYPE| NONE| PARENT_NOT_SET[ 68/ 68/ 70/ 0][0/0/0][ 80000][0-0] c2
|
||||
# 69> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 70/ 70/ 71/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 69> TYPE| NONE| PARENT_NOT_SET[ 71/ 71/ 74/ 0][0/1/0][ 80040][0-0] int
|
||||
# 69> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 74/ 74/ 75/ 0][0/0/0][ 200000040][0-0] >
|
||||
# 69> DC_MEMBER| NONE| PARENT_NOT_SET[ 75/ 75/ 77/ 0][0/0/0][ 200080000][0-0] ::
|
||||
# 69> TYPE| NONE| PARENT_NOT_SET[ 77/ 77/ 88/ 0][0/0/0][ 0][0-0] inner_class
|
||||
# 69> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 88/ 88/ 89/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 69> TYPE| NONE| PARENT_NOT_SET[ 89/ 89/ 92/ 0][0/1/0][ 80040][0-0] int
|
||||
# 69> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 92/ 92/ 93/ 0][0/0/0][ 200000040][0-0] >
|
||||
# 69> DC_MEMBER| NONE| PARENT_NOT_SET[ 93/ 93/ 95/ 0][0/0/0][ 200080000][0-0] ::
|
||||
# 69> WORD| NONE| PARENT_NOT_SET[ 95/ 95/108/ 0][0/0/0][ 23000000][0-0] m_inner_class
|
||||
# 69> ASSIGN| NONE| PARENT_NOT_SET[109/109/110/ 1][0/0/0][ 200000000][0-0] =
|
||||
# 69> WORD| NONE| PARENT_NOT_SET[111/111/118/ 1][0/0/0][ 80000][0-0] nullptr
|
||||
# 69> SEMICOLON| STRUCT| PARENT_NOT_SET[118/118/119/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 69> NEWLINE| NONE| PARENT_NOT_SET[119/119/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 71> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 66/ 0][0/0/0][ 0][0-0] // template<...> class/struct[<...>] [macros/attributes ...] type
|
||||
# 71> NEWLINE| NONE| PARENT_NOT_SET[ 66/ 66/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 72> TEMPLATE| NONE| PARENT_NOT_SET[ 1/ 1/ 9/ 0][0/0/0][ c0000][0-0] template
|
||||
# 72> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 9/ 9/ 10/ 0][0/0/0][ 200000040][0-0] <
|
||||
# 72> TYPENAME| NONE| PARENT_NOT_SET[ 10/ 10/ 18/ 0][0/1/0][ 80040][0-0] typename
|
||||
# 72> COMMA| NONE| PARENT_NOT_SET[ 18/ 18/ 19/ 0][0/1/0][ 200000040][0-0] ,
|
||||
# 72> TYPENAME| NONE| PARENT_NOT_SET[ 20/ 20/ 28/ 1][0/1/0][ 80040][0-0] typename
|
||||
# 72> ELLIPSIS| NONE| PARENT_NOT_SET[ 29/ 29/ 32/ 1][0/1/0][ 200000040][0-0] ...
|
||||
# 72> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 32/ 32/ 33/ 0][0/0/0][ 200000040][0-0] >
|
||||
# 72> NEWLINE| NONE| PARENT_NOT_SET[ 33/ 33/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 73> CLASS| TEMPLATE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][0/0/0][1000000a0000][0-0] class
|
||||
# 73> WORD| NONE| PARENT_NOT_SET[ 7/ 7/ 17/ 1][0/0/0][100000020000][0-0] API_EXPORT
|
||||
# 73> TYPE| CLASS| PARENT_NOT_SET[ 18/ 18/ 20/ 1][0/0/0][100000000000][0-0] c2
|
||||
# 73> SEMICOLON| CLASS| PARENT_NOT_SET[ 20/ 20/ 21/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 73> NEWLINE| NONE| PARENT_NOT_SET[ 21/ 21/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 75> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 68/ 0][0/0/0][ 0][0-0] // class/struct [macros/attributes ...] type : bases ... { } x, ...
|
||||
# 75> NEWLINE| NONE| PARENT_NOT_SET[ 68/ 68/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 76> CLASS| NONE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][0/0/0][ e0000][0-0] class
|
||||
# 76> WORD| NONE| PARENT_NOT_SET[ 7/ 7/ 17/ 1][0/0/0][ 20000][0-0] API_EXPORT
|
||||
# 76> ATTRIBUTE| NONE| PARENT_NOT_SET[ 18/ 18/ 31/ 1][0/0/0][ 0][0-0] __attribute__
|
||||
# 76> FPAREN_OPEN| ATTRIBUTE| PARENT_NOT_SET[ 31/ 31/ 32/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 76> PAREN_OPEN| NONE| PARENT_NOT_SET[ 32/ 32/ 33/ 0][0/1/0][ 200080000][0-0] (
|
||||
# 76> WORD| NONE| PARENT_NOT_SET[ 33/ 33/ 47/ 0][0/2/0][ 80000][0-0] __deprecated__
|
||||
# 76> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 47/ 47/ 48/ 0][0/1/0][ 200000000][0-0] )
|
||||
# 76> FPAREN_CLOSE| ATTRIBUTE| PARENT_NOT_SET[ 48/ 48/ 49/ 0][0/0/0][ 200000000][0-0] )
|
||||
# 76> MACRO_FUNC_CALL| NONE| PARENT_NOT_SET[ 50/ 50/ 57/ 1][0/0/0][ 0][0-0] ALIGNAS
|
||||
# 76> FPAREN_OPEN| MACRO_FUNC_CALL| PARENT_NOT_SET[ 57/ 57/ 58/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 76> NUMBER| NONE| PARENT_NOT_SET[ 58/ 58/ 59/ 0][0/1/0][ 80000][0-0] 4
|
||||
# 76> FPAREN_CLOSE| MACRO_FUNC_CALL| PARENT_NOT_SET[ 59/ 59/ 60/ 0][0/0/0][ 200000000][0-0] )
|
||||
# 76> TYPE| CLASS| PARENT_NOT_SET[ 61/ 61/ 63/ 1][0/0/0][ 800000][0-0] c3
|
||||
# 76> NEWLINE| NONE| PARENT_NOT_SET[ 63/ 63/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 77> CLASS_COLON| CLASS| PARENT_NOT_SET[ 9/ 1/ 2/ 0][0/0/0][ 200000800][0-0] :
|
||||
# 77> QUALIFIER| NONE| PARENT_NOT_SET[ 11/ 3/ 9/ 1][0/0/0][ e0800][0-0] public
|
||||
# 77> TYPE| NONE| PARENT_NOT_SET[ 18/ 10/ 25/ 1][0/0/0][ 800][0-0] outer_namespace
|
||||
# 77> DC_MEMBER| NONE| PARENT_NOT_SET[ 33/ 25/ 27/ 0][0/0/0][ 200000800][0-0] ::
|
||||
# 77> TYPE| NONE| PARENT_NOT_SET[ 35/ 27/ 42/ 0][0/0/0][ 800][0-0] inner_namespace
|
||||
# 77> DC_MEMBER| NONE| PARENT_NOT_SET[ 50/ 42/ 44/ 0][0/0/0][ 200000800][0-0] ::
|
||||
# 77> TYPE| NONE| PARENT_NOT_SET[ 52/ 44/ 49/ 0][0/0/0][ 800][0-0] Base2
|
||||
# 77> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 57/ 49/ 50/ 0][0/0/0][ 200000840][0-0] <
|
||||
# 77> TYPE| NONE| PARENT_NOT_SET[ 58/ 50/ 53/ 0][0/1/0][ 80840][0-0] int
|
||||
# 77> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 61/ 53/ 54/ 0][0/0/0][ 200000840][0-0] >
|
||||
# 77> COMMA| NONE| PARENT_NOT_SET[ 62/ 54/ 55/ 0][0/0/0][ 200080800][0-0] ,
|
||||
# 77> NEWLINE| NONE| PARENT_NOT_SET[ 63/ 55/ 3/ 0][0/0/0][ 0][1-0]
|
||||
# 78> QUALIFIER| NONE| PARENT_NOT_SET[ 9/ 3/ 9/ 0][0/0/0][ a0800][0-0] public
|
||||
# 78> TYPE| NONE| PARENT_NOT_SET[ 16/ 10/ 12/ 1][0/0/0][ 800][0-0] c2
|
||||
# 78> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 18/ 12/ 13/ 0][0/0/0][ 200000840][0-0] <
|
||||
# 78> TYPE| NONE| PARENT_NOT_SET[ 19/ 13/ 16/ 0][0/1/0][ 80840][0-0] int
|
||||
# 78> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 22/ 16/ 17/ 0][0/0/0][ 200000840][0-0] >
|
||||
# 78> DC_MEMBER| NONE| PARENT_NOT_SET[ 23/ 17/ 19/ 0][0/0/0][ 200080800][0-0] ::
|
||||
# 78> TYPE| NONE| PARENT_NOT_SET[ 25/ 19/ 30/ 0][0/0/0][ 800][0-0] inner_class
|
||||
# 78> ANGLE_OPEN| TEMPLATE| PARENT_NOT_SET[ 36/ 30/ 31/ 0][0/0/0][ 200000840][0-0] <
|
||||
# 78> TYPE| NONE| PARENT_NOT_SET[ 37/ 31/ 34/ 0][0/1/0][ 80840][0-0] int
|
||||
# 78> ANGLE_CLOSE| TEMPLATE| PARENT_NOT_SET[ 40/ 34/ 35/ 0][0/0/0][ 200000840][0-0] >
|
||||
# 78> NEWLINE| NONE| PARENT_NOT_SET[ 41/ 35/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 79> BRACE_OPEN| CLASS| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200080400][0-0] {
|
||||
# 79> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 2/ 1/ 0][1/1/0][ 400][1-0]
|
||||
# 80> ACCESS| NONE| PARENT_NOT_SET[ 1/ 1/ 7/ 0][1/1/0][ c0400][0-0] public
|
||||
# 80> ACCESS_COLON| NONE| PARENT_NOT_SET[ 7/ 7/ 8/ 0][1/1/0][ 200000400][0-0] :
|
||||
# 80> NEWLINE| NONE| PARENT_NOT_SET[ 8/ 8/ 4/ 0][1/1/0][ 400][1-0]
|
||||
# 81> FUNC_CLASS_DEF| NONE| PARENT_NOT_SET[ 1/ 4/ 6/ 0][1/1/0][ c0400][0-0] c3
|
||||
# 81> FPAREN_OPEN| FUNC_CLASS_DEF| PARENT_NOT_SET[ 3/ 6/ 7/ 0][1/1/0][ 200000500][0-0] (
|
||||
# 81> TYPE| NONE| PARENT_NOT_SET[ 4/ 7/ 10/ 0][1/2/0][ 208a0510][0-0] int
|
||||
# 81> WORD| NONE| PARENT_NOT_SET[ 8/ 11/ 12/ 1][1/2/0][ 21000510][0-0] x
|
||||
# 81> ASSIGN_DEFAULT_ARG| FUNC_PROTO| PARENT_NOT_SET[ 10/ 13/ 14/ 1][1/2/0][ 200000510][0-0] =
|
||||
# 81> NUMBER| NONE| PARENT_NOT_SET[ 12/ 15/ 16/ 1][1/2/0][ 80510][0-0] 0
|
||||
# 81> COMMA| NONE| PARENT_NOT_SET[ 13/ 16/ 17/ 0][1/2/0][ 200000510][0-0] ,
|
||||
# 81> TYPE| NONE| PARENT_NOT_SET[ 15/ 18/ 21/ 1][1/2/0][ 208a0510][0-0] int
|
||||
# 81> WORD| NONE| PARENT_NOT_SET[ 19/ 22/ 23/ 1][1/2/0][ 21000510][0-0] y
|
||||
# 81> ASSIGN_DEFAULT_ARG| FUNC_PROTO| PARENT_NOT_SET[ 21/ 24/ 25/ 1][1/2/0][ 200000510][0-0] =
|
||||
# 81> NUMBER| NONE| PARENT_NOT_SET[ 23/ 26/ 27/ 1][1/2/0][ 80510][0-0] 0
|
||||
# 81> COMMA| NONE| PARENT_NOT_SET[ 24/ 27/ 28/ 0][1/2/0][ 200000510][0-0] ,
|
||||
# 81> TYPE| NONE| PARENT_NOT_SET[ 26/ 29/ 32/ 1][1/2/0][ 208a0510][0-0] int
|
||||
# 81> WORD| NONE| PARENT_NOT_SET[ 30/ 33/ 34/ 1][1/2/0][ 21000510][0-0] z
|
||||
# 81> ASSIGN_DEFAULT_ARG| FUNC_PROTO| PARENT_NOT_SET[ 32/ 35/ 36/ 1][1/2/0][ 200000510][0-0] =
|
||||
# 81> NUMBER| NONE| PARENT_NOT_SET[ 34/ 37/ 38/ 1][1/2/0][ 80510][0-0] 0
|
||||
# 81> FPAREN_CLOSE| FUNC_CLASS_DEF| PARENT_NOT_SET[ 35/ 38/ 39/ 0][1/1/0][ 200000510][0-0] )
|
||||
# 81> CONSTR_COLON| NONE| PARENT_NOT_SET[ 37/ 40/ 41/ 1][1/1/0][ 200000500][0-0] :
|
||||
# 81> FUNC_CTOR_VAR| NONE| PARENT_NOT_SET[ 39/ 42/ 45/ 1][1/1/0][ c0500][0-0] m_x
|
||||
# 81> FPAREN_OPEN| FUNC_CTOR_VAR| PARENT_NOT_SET[ 42/ 45/ 46/ 0][1/1/0][ 200000500][0-0] (
|
||||
# 81> WORD| NONE| PARENT_NOT_SET[ 43/ 46/ 47/ 0][1/2/0][ 80510][0-0] x
|
||||
# 81> FPAREN_CLOSE| FUNC_CTOR_VAR| PARENT_NOT_SET[ 44/ 47/ 48/ 0][1/1/0][ 200000510][0-0] )
|
||||
# 81> COMMA| NONE| PARENT_NOT_SET[ 45/ 48/ 49/ 0][1/1/0][ 200000500][0-0] ,
|
||||
# 81> FUNC_CTOR_VAR| NONE| PARENT_NOT_SET[ 47/ 50/ 53/ 1][1/1/0][ 80500][0-0] m_y
|
||||
# 81> FPAREN_OPEN| FUNC_CTOR_VAR| PARENT_NOT_SET[ 50/ 53/ 54/ 0][1/1/0][ 200000500][0-0] (
|
||||
# 81> WORD| NONE| PARENT_NOT_SET[ 51/ 54/ 55/ 0][1/2/0][ 80510][0-0] y
|
||||
# 81> FPAREN_CLOSE| FUNC_CTOR_VAR| PARENT_NOT_SET[ 52/ 55/ 56/ 0][1/1/0][ 200000510][0-0] )
|
||||
# 81> COMMA| NONE| PARENT_NOT_SET[ 53/ 56/ 57/ 0][1/1/0][ 200000500][0-0] ,
|
||||
# 81> FUNC_CTOR_VAR| NONE| PARENT_NOT_SET[ 55/ 58/ 61/ 1][1/1/0][ 80500][0-0] m_z
|
||||
# 81> FPAREN_OPEN| FUNC_CTOR_VAR| PARENT_NOT_SET[ 58/ 61/ 62/ 0][1/1/0][ 200000500][0-0] (
|
||||
# 81> WORD| NONE| PARENT_NOT_SET[ 59/ 62/ 63/ 0][1/2/0][ 80510][0-0] z
|
||||
# 81> FPAREN_CLOSE| FUNC_CTOR_VAR| PARENT_NOT_SET[ 60/ 63/ 64/ 0][1/1/0][ 200000510][0-0] )
|
||||
# 81> BRACE_OPEN| FUNC_CLASS_DEF| PARENT_NOT_SET[ 62/ 65/ 66/ 1][1/1/0][ 280000400][0-0] {
|
||||
# 81> NEWLINE| NONE| PARENT_NOT_SET[ 63/ 67/ 0/ 0][1/1/0][ 400][1-0]
|
||||
# 81> BRACE_CLOSE| FUNC_CLASS_DEF| PARENT_NOT_SET[ 1/ 67/ 68/ 1][1/1/0][ 280000400][0-0] }
|
||||
# 81> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 68/ 4/ 0][1/1/0][ 400][2-0]
|
||||
# 83> TYPE| NONE| PARENT_NOT_SET[ 1/ 4/ 7/ 0][1/1/0][ 8e0400][0-0] int
|
||||
# 83> WORD| NONE| PARENT_NOT_SET[ 5/ 8/ 11/ 1][1/1/0][ 3000400][0-0] m_x
|
||||
# 83> SEMICOLON| NONE| PARENT_NOT_SET[ 8/ 11/ 12/ 0][1/1/0][ 200000400][0-0] ;
|
||||
# 83> NEWLINE| NONE| PARENT_NOT_SET[ 9/ 12/ 4/ 0][1/1/0][ 400][1-0]
|
||||
# 84> TYPE| NONE| PARENT_NOT_SET[ 1/ 4/ 7/ 0][1/1/0][ 8e0400][0-0] int
|
||||
# 84> WORD| NONE| PARENT_NOT_SET[ 5/ 8/ 11/ 1][1/1/0][ 3000400][0-0] m_y
|
||||
# 84> SEMICOLON| NONE| PARENT_NOT_SET[ 8/ 11/ 12/ 0][1/1/0][ 200000400][0-0] ;
|
||||
# 84> NEWLINE| NONE| PARENT_NOT_SET[ 9/ 12/ 4/ 0][1/1/0][ 400][1-0]
|
||||
# 85> TYPE| NONE| PARENT_NOT_SET[ 1/ 4/ 7/ 0][1/1/0][ 8e0400][0-0] int
|
||||
# 85> WORD| NONE| PARENT_NOT_SET[ 5/ 8/ 11/ 1][1/1/0][ 3000400][0-0] m_z
|
||||
# 85> SEMICOLON| NONE| PARENT_NOT_SET[ 8/ 11/ 12/ 0][1/1/0][ 200000400][0-0] ;
|
||||
# 85> NEWLINE| NONE| PARENT_NOT_SET[ 9/ 12/ 1/ 0][1/1/0][ 400][1-0]
|
||||
# 86> BRACE_CLOSE| CLASS| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200000400][0-0] }
|
||||
# 86> WORD| NONE| PARENT_NOT_SET[ 3/ 3/ 6/ 1][0/0/0][ 70c0000][0-0] c31
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 6/ 6/ 7/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 86> PTR_TYPE| CLASS| PARENT_NOT_SET[ 8/ 8/ 9/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 86> WORD| NONE| PARENT_NOT_SET[ 9/ 9/ 12/ 0][0/0/0][ 25080000][0-0] c32
|
||||
# 86> ASSIGN| NONE| PARENT_NOT_SET[ 13/ 13/ 14/ 1][0/0/0][ 200000000][0-0] =
|
||||
# 86> WORD| NONE| PARENT_NOT_SET[ 15/ 15/ 22/ 1][0/0/0][ 80000][0-0] nullptr
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 22/ 22/ 23/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 86> PTR_TYPE| CLASS| PARENT_NOT_SET[ 24/ 24/ 25/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 86> WORD| NONE| PARENT_NOT_SET[ 25/ 25/ 28/ 0][0/0/0][ 5080000][0-0] c33
|
||||
# 86> TSQUARE| NONE| PARENT_NOT_SET[ 28/ 28/ 30/ 0][0/0/0][ 200000000][0-0] []
|
||||
# 86> ASSIGN| NONE| PARENT_NOT_SET[ 31/ 31/ 32/ 1][0/0/0][ 200000000][0-0] =
|
||||
# 86> BRACE_OPEN| BRACED_INIT_LIST| PARENT_NOT_SET[ 33/ 33/ 34/ 1][0/0/0][ 240080000][0-0] {
|
||||
# 86> WORD| NONE| PARENT_NOT_SET[ 35/ 35/ 42/ 1][1/1/0][ 40080000][0-0] nullptr
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 42/ 42/ 43/ 0][1/1/0][ 240000000][0-0] ,
|
||||
# 86> WORD| NONE| PARENT_NOT_SET[ 44/ 44/ 51/ 1][1/1/0][ 40080000][0-0] nullptr
|
||||
# 86> BRACE_CLOSE| BRACED_INIT_LIST| PARENT_NOT_SET[ 52/ 52/ 53/ 1][0/0/0][ 240000000][0-0] }
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 53/ 53/ 54/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 86> WORD| NONE| PARENT_NOT_SET[ 55/ 55/ 58/ 1][0/0/0][ 25080000][0-0] c34
|
||||
# 86> BRACE_OPEN| BRACED_INIT_LIST| PARENT_NOT_SET[ 58/ 58/ 59/ 0][0/0/0][ 240000000][0-0] {
|
||||
# 86> NUMBER| NONE| PARENT_NOT_SET[ 60/ 60/ 61/ 1][1/1/0][ 400c0000][0-0] 0
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 61/ 61/ 62/ 0][1/1/0][ 240000000][0-0] ,
|
||||
# 86> NUMBER| NONE| PARENT_NOT_SET[ 63/ 63/ 64/ 1][1/1/0][ 40080000][0-0] 1
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 64/ 64/ 65/ 0][1/1/0][ 240000000][0-0] ,
|
||||
# 86> NUMBER| NONE| PARENT_NOT_SET[ 66/ 66/ 67/ 1][1/1/0][ 40080000][0-0] 2
|
||||
# 86> BRACE_CLOSE| BRACED_INIT_LIST| PARENT_NOT_SET[ 67/ 67/ 68/ 0][0/0/0][ 240000000][0-0] }
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 68/ 68/ 69/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 86> PTR_TYPE| CLASS| PARENT_NOT_SET[ 70/ 70/ 71/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 86> QUALIFIER| NONE| PARENT_NOT_SET[ 72/ 72/ 77/ 1][0/0/0][ a0000][0-0] const
|
||||
# 86> FUNC_CALL| NONE| PARENT_NOT_SET[ 78/ 78/ 81/ 1][0/0/0][ 5000000][0-0] c35
|
||||
# 86> FPAREN_OPEN| FUNC_CALL| PARENT_NOT_SET[ 81/ 81/ 82/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 86> WORD| NONE| PARENT_NOT_SET[ 82/ 82/ 89/ 0][0/1/0][ 80010][0-0] nullptr
|
||||
# 86> FPAREN_CLOSE| FUNC_CALL| PARENT_NOT_SET[ 89/ 89/ 90/ 0][0/0/0][ 200000010][0-0] )
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 90/ 90/ 91/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 86> FUNC_CALL| NONE| PARENT_NOT_SET[ 92/ 92/ 95/ 1][0/0/0][ 5080000][0-0] c16
|
||||
# 86> FPAREN_OPEN| FUNC_CALL| PARENT_NOT_SET[ 95/ 95/ 96/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 86> NUMBER| NONE| PARENT_NOT_SET[ 96/ 96/ 97/ 0][0/1/0][ 80010][0-0] 0
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[ 97/ 97/ 98/ 0][0/1/0][ 200000010][0-0] ,
|
||||
# 86> NUMBER| NONE| PARENT_NOT_SET[ 99/ 99/100/ 1][0/1/0][ 80010][0-0] 1
|
||||
# 86> COMMA| NONE| PARENT_NOT_SET[100/100/101/ 0][0/1/0][ 200000010][0-0] ,
|
||||
# 86> NUMBER| NONE| PARENT_NOT_SET[102/102/103/ 1][0/1/0][ 80010][0-0] 2
|
||||
# 86> FPAREN_CLOSE| FUNC_CALL| PARENT_NOT_SET[103/103/104/ 0][0/0/0][ 200000010][0-0] )
|
||||
# 86> SEMICOLON| CLASS| PARENT_NOT_SET[104/104/105/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 86> NEWLINE| NONE| PARENT_NOT_SET[105/105/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 88> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 52/ 0][0/0/0][ 0][0-0] // class/struct [macros/attributes ...] type x, ...
|
||||
# 88> NEWLINE| NONE| PARENT_NOT_SET[ 52/ 52/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 89> CLASS| NONE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][0/0/0][ e0000][0-0] class
|
||||
# 89> ATTRIBUTE| NONE| PARENT_NOT_SET[ 7/ 7/ 20/ 1][0/0/0][ 0][0-0] __attribute__
|
||||
# 89> FPAREN_OPEN| ATTRIBUTE| PARENT_NOT_SET[ 20/ 20/ 21/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 89> PAREN_OPEN| NONE| PARENT_NOT_SET[ 21/ 21/ 22/ 0][0/1/0][ 200080000][0-0] (
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[ 22/ 22/ 36/ 0][0/2/0][ 80000][0-0] __deprecated__
|
||||
# 89> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 36/ 36/ 37/ 0][0/1/0][ 200000000][0-0] )
|
||||
# 89> FPAREN_CLOSE| ATTRIBUTE| PARENT_NOT_SET[ 37/ 37/ 38/ 0][0/0/0][ 200000000][0-0] )
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[ 39/ 39/ 49/ 1][0/0/0][ e0000][0-0] API_EXPORT
|
||||
# 89> MACRO_FUNC_CALL| NONE| PARENT_NOT_SET[ 50/ 50/ 57/ 1][0/0/0][ 0][0-0] ALIGNAS
|
||||
# 89> FPAREN_OPEN| MACRO_FUNC_CALL| PARENT_NOT_SET[ 57/ 57/ 58/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 89> NUMBER| NONE| PARENT_NOT_SET[ 58/ 58/ 59/ 0][0/1/0][ 80000][0-0] 4
|
||||
# 89> FPAREN_CLOSE| MACRO_FUNC_CALL| PARENT_NOT_SET[ 59/ 59/ 60/ 0][0/0/0][ 200000000][0-0] )
|
||||
# 89> TYPE| CLASS| PARENT_NOT_SET[ 61/ 61/ 63/ 1][0/0/0][ 820000][0-0] c3
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[ 64/ 64/ 67/ 1][0/0/0][ 3000000][0-0] c41
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[ 67/ 67/ 68/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 89> PTR_TYPE| CLASS| PARENT_NOT_SET[ 69/ 69/ 70/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[ 70/ 70/ 73/ 0][0/0/0][ 21080000][0-0] c42
|
||||
# 89> ASSIGN| NONE| PARENT_NOT_SET[ 74/ 74/ 75/ 1][0/0/0][ 200000000][0-0] =
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[ 76/ 76/ 79/ 1][0/0/0][ 80000][0-0] c32
|
||||
# 89> QUESTION| NONE| PARENT_NOT_SET[ 80/ 80/ 81/ 1][0/0/0][ 200000000][0-0] ?
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[ 82/ 82/ 85/ 1][0/0/0][ 80000][0-0] c32
|
||||
# 89> COND_COLON| NONE| PARENT_NOT_SET[ 86/ 86/ 87/ 1][0/0/0][ 200000000][0-0] :
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[ 88/ 88/ 95/ 1][0/0/0][ c0000][0-0] nullptr
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[ 95/ 95/ 96/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 89> PTR_TYPE| CLASS| PARENT_NOT_SET[ 97/ 97/ 98/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[ 98/ 98/101/ 0][0/0/0][ 1080000][0-0] c43
|
||||
# 89> TSQUARE| NONE| PARENT_NOT_SET[101/101/103/ 0][0/0/0][ 200000000][0-0] []
|
||||
# 89> ASSIGN| NONE| PARENT_NOT_SET[104/104/105/ 1][0/0/0][ 200000000][0-0] =
|
||||
# 89> BRACE_OPEN| BRACED_INIT_LIST| PARENT_NOT_SET[106/106/107/ 1][0/0/0][ 240080000][0-0] {
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[108/108/115/ 1][1/1/0][ 40080000][0-0] nullptr
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[115/115/116/ 0][1/1/0][ 240000000][0-0] ,
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[117/117/124/ 1][1/1/0][ 40080000][0-0] nullptr
|
||||
# 89> BRACE_CLOSE| BRACED_INIT_LIST| PARENT_NOT_SET[125/125/126/ 1][0/0/0][ 240000000][0-0] }
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[126/126/127/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[128/128/131/ 1][0/0/0][ 21080000][0-0] c44
|
||||
# 89> BRACE_OPEN| BRACED_INIT_LIST| PARENT_NOT_SET[131/131/132/ 0][0/0/0][ 240000000][0-0] {
|
||||
# 89> NUMBER| NONE| PARENT_NOT_SET[133/133/134/ 1][1/1/0][ 400c0000][0-0] 0
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[134/134/135/ 0][1/1/0][ 240000000][0-0] ,
|
||||
# 89> NUMBER| NONE| PARENT_NOT_SET[136/136/137/ 1][1/1/0][ 40080000][0-0] 1
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[137/137/138/ 0][1/1/0][ 240000000][0-0] ,
|
||||
# 89> NUMBER| NONE| PARENT_NOT_SET[139/139/140/ 1][1/1/0][ 40080000][0-0] 2
|
||||
# 89> BRACE_CLOSE| BRACED_INIT_LIST| PARENT_NOT_SET[140/140/141/ 0][0/0/0][ 240000000][0-0] }
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[141/141/142/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 89> PTR_TYPE| CLASS| PARENT_NOT_SET[143/143/144/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 89> QUALIFIER| NONE| PARENT_NOT_SET[145/145/150/ 1][0/0/0][ a0000][0-0] const
|
||||
# 89> FUNC_CALL| NONE| PARENT_NOT_SET[151/151/154/ 1][0/0/0][ 1000000][0-0] c45
|
||||
# 89> FPAREN_OPEN| FUNC_CALL| PARENT_NOT_SET[154/154/155/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 89> WORD| NONE| PARENT_NOT_SET[155/155/162/ 0][0/1/0][ 80010][0-0] nullptr
|
||||
# 89> FPAREN_CLOSE| FUNC_CALL| PARENT_NOT_SET[162/162/163/ 0][0/0/0][ 200000010][0-0] )
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[163/163/164/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 89> FUNC_CALL| NONE| PARENT_NOT_SET[165/165/168/ 1][0/0/0][ 1080000][0-0] c46
|
||||
# 89> FPAREN_OPEN| FUNC_CALL| PARENT_NOT_SET[168/168/169/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 89> NUMBER| NONE| PARENT_NOT_SET[169/169/170/ 0][0/1/0][ 80010][0-0] 0
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[170/170/171/ 0][0/1/0][ 200000010][0-0] ,
|
||||
# 89> NUMBER| NONE| PARENT_NOT_SET[172/172/173/ 1][0/1/0][ 80010][0-0] 1
|
||||
# 89> COMMA| NONE| PARENT_NOT_SET[173/173/174/ 0][0/1/0][ 200000010][0-0] ,
|
||||
# 89> NUMBER| NONE| PARENT_NOT_SET[175/175/176/ 1][0/1/0][ 80010][0-0] 2
|
||||
# 89> FPAREN_CLOSE| FUNC_CALL| PARENT_NOT_SET[176/176/177/ 0][0/0/0][ 200000010][0-0] )
|
||||
# 89> SEMICOLON| CLASS| PARENT_NOT_SET[177/177/178/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 89> NEWLINE| NONE| PARENT_NOT_SET[178/178/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 91> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 68/ 0][0/0/0][ 0][0-0] // class/struct [macros/attributes ...] type : bases ... { } x, ...
|
||||
# 91> NEWLINE| NONE| PARENT_NOT_SET[ 68/ 68/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 92> CLASS| NONE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][0/0/0][ e0000][0-0] class
|
||||
# 92> FUNC_CALL| NONE| PARENT_NOT_SET[ 7/ 7/ 14/ 1][0/0/0][ 0][0-0] ALIGNAS
|
||||
# 92> FPAREN_OPEN| FUNC_CALL| PARENT_NOT_SET[ 14/ 14/ 15/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 92> NUMBER| NONE| PARENT_NOT_SET[ 15/ 15/ 16/ 0][0/1/0][ 80010][0-0] 4
|
||||
# 92> FPAREN_CLOSE| FUNC_CALL| PARENT_NOT_SET[ 16/ 16/ 17/ 0][0/0/0][ 200000010][0-0] )
|
||||
# 92> WORD| NONE| PARENT_NOT_SET[ 18/ 18/ 28/ 1][0/0/0][ 20000][0-0] API_EXPORT
|
||||
# 92> ATTRIBUTE| NONE| PARENT_NOT_SET[ 29/ 29/ 42/ 1][0/0/0][ 0][0-0] __attribute__
|
||||
# 92> FPAREN_OPEN| ATTRIBUTE| PARENT_NOT_SET[ 42/ 42/ 43/ 0][0/0/0][ 200000000][0-0] (
|
||||
# 92> PAREN_OPEN| NONE| PARENT_NOT_SET[ 43/ 43/ 44/ 0][0/1/0][ 200080000][0-0] (
|
||||
# 92> WORD| NONE| PARENT_NOT_SET[ 44/ 44/ 58/ 0][0/2/0][ 80000][0-0] __deprecated__
|
||||
# 92> PAREN_CLOSE| NONE| PARENT_NOT_SET[ 58/ 58/ 59/ 0][0/1/0][ 200000000][0-0] )
|
||||
# 92> FPAREN_CLOSE| ATTRIBUTE| PARENT_NOT_SET[ 59/ 59/ 60/ 0][0/0/0][ 200000000][0-0] )
|
||||
# 92> NEWLINE| NONE| PARENT_NOT_SET[ 60/ 60/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 93> CLASS_COLON| CLASS| PARENT_NOT_SET[ 9/ 1/ 2/ 0][0/0/0][ 200000800][0-0] :
|
||||
# 93> QUALIFIER| NONE| PARENT_NOT_SET[ 11/ 3/ 9/ 1][0/0/0][ e0800][0-0] public
|
||||
# 93> TYPE| NONE| PARENT_NOT_SET[ 18/ 10/ 25/ 1][0/0/0][ 800][0-0] outer_namespace
|
||||
# 93> DC_MEMBER| NONE| PARENT_NOT_SET[ 33/ 25/ 27/ 0][0/0/0][ 200000800][0-0] ::
|
||||
# 93> TYPE| NONE| PARENT_NOT_SET[ 35/ 27/ 42/ 0][0/0/0][ 800][0-0] inner_namespace
|
||||
# 93> DC_MEMBER| NONE| PARENT_NOT_SET[ 50/ 42/ 44/ 0][0/0/0][ 200000800][0-0] ::
|
||||
# 93> TYPE| NONE| PARENT_NOT_SET[ 52/ 44/ 49/ 0][0/0/0][ 800][0-0] Base1
|
||||
# 93> NEWLINE| NONE| PARENT_NOT_SET[ 57/ 49/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 94> BRACE_OPEN| CLASS| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200000000][0-0] {
|
||||
# 94> NEWLINE| NONE| PARENT_NOT_SET[ 2/ 2/ 1/ 0][1/1/0][ 400][1-0]
|
||||
# 95> ACCESS| NONE| PARENT_NOT_SET[ 1/ 1/ 7/ 0][1/1/0][ c0400][0-0] public
|
||||
# 95> ACCESS_COLON| NONE| PARENT_NOT_SET[ 7/ 7/ 8/ 0][1/1/0][ 200000400][0-0] :
|
||||
# 95> NEWLINE| NONE| PARENT_NOT_SET[ 8/ 8/ 4/ 0][1/1/0][ 400][1-0]
|
||||
# 96> TYPE| NONE| PARENT_NOT_SET[ 1/ 4/ 7/ 0][1/1/0][ 8e0400][0-0] int
|
||||
# 96> WORD| NONE| PARENT_NOT_SET[ 5/ 8/ 11/ 1][1/1/0][ 3000400][0-0] m_x
|
||||
# 96> SEMICOLON| NONE| PARENT_NOT_SET[ 8/ 11/ 12/ 0][1/1/0][ 200000400][0-0] ;
|
||||
# 96> NEWLINE| NONE| PARENT_NOT_SET[ 9/ 12/ 4/ 0][1/1/0][ 400][1-0]
|
||||
# 97> TYPE| NONE| PARENT_NOT_SET[ 1/ 4/ 7/ 0][1/1/0][ 8e0400][0-0] int
|
||||
# 97> WORD| NONE| PARENT_NOT_SET[ 5/ 8/ 11/ 1][1/1/0][ 3000400][0-0] m_y
|
||||
# 97> SEMICOLON| NONE| PARENT_NOT_SET[ 8/ 11/ 12/ 0][1/1/0][ 200000400][0-0] ;
|
||||
# 97> NEWLINE| NONE| PARENT_NOT_SET[ 9/ 12/ 4/ 0][1/1/0][ 400][1-0]
|
||||
# 98> TYPE| NONE| PARENT_NOT_SET[ 1/ 4/ 7/ 0][1/1/0][ 8e0400][0-0] int
|
||||
# 98> WORD| NONE| PARENT_NOT_SET[ 5/ 8/ 11/ 1][1/1/0][ 3000400][0-0] m_z
|
||||
# 98> SEMICOLON| NONE| PARENT_NOT_SET[ 8/ 11/ 12/ 0][1/1/0][ 200000400][0-0] ;
|
||||
# 98> NEWLINE| NONE| PARENT_NOT_SET[ 9/ 12/ 1/ 0][1/1/0][ 400][1-0]
|
||||
# 99> BRACE_CLOSE| CLASS| PARENT_NOT_SET[ 1/ 1/ 2/ 0][0/0/0][ 200000400][0-0] }
|
||||
# 99> WORD| NONE| PARENT_NOT_SET[ 3/ 3/ 6/ 1][0/0/0][ 70c0000][0-0] c51
|
||||
# 99> COMMA| NONE| PARENT_NOT_SET[ 6/ 6/ 7/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 99> PTR_TYPE| CLASS| PARENT_NOT_SET[ 8/ 8/ 9/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 99> WORD| NONE| PARENT_NOT_SET[ 9/ 9/ 12/ 0][0/0/0][ 25080000][0-0] c52
|
||||
# 99> ASSIGN| NONE| PARENT_NOT_SET[ 13/ 13/ 14/ 1][0/0/0][ 200000000][0-0] =
|
||||
# 99> WORD| NONE| PARENT_NOT_SET[ 15/ 15/ 22/ 1][0/0/0][ 80000][0-0] nullptr
|
||||
# 99> COMMA| NONE| PARENT_NOT_SET[ 22/ 22/ 23/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 99> PTR_TYPE| CLASS| PARENT_NOT_SET[ 24/ 24/ 25/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 99> WORD| NONE| PARENT_NOT_SET[ 25/ 25/ 28/ 0][0/0/0][ 5080000][0-0] c53
|
||||
# 99> TSQUARE| NONE| PARENT_NOT_SET[ 28/ 28/ 30/ 0][0/0/0][ 200000000][0-0] []
|
||||
# 99> ASSIGN| NONE| PARENT_NOT_SET[ 31/ 31/ 32/ 1][0/0/0][ 200000000][0-0] =
|
||||
# 99> BRACE_OPEN| BRACED_INIT_LIST| PARENT_NOT_SET[ 33/ 33/ 34/ 1][0/0/0][ 240080000][0-0] {
|
||||
# 99> WORD| NONE| PARENT_NOT_SET[ 35/ 35/ 42/ 1][1/1/0][ 40080000][0-0] nullptr
|
||||
# 99> COMMA| NONE| PARENT_NOT_SET[ 42/ 42/ 43/ 0][1/1/0][ 240000000][0-0] ,
|
||||
# 99> WORD| NONE| PARENT_NOT_SET[ 44/ 44/ 51/ 1][1/1/0][ 40080000][0-0] nullptr
|
||||
# 99> BRACE_CLOSE| BRACED_INIT_LIST| PARENT_NOT_SET[ 52/ 52/ 53/ 1][0/0/0][ 240000000][0-0] }
|
||||
# 99> SEMICOLON| CLASS| PARENT_NOT_SET[ 53/ 53/ 54/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 99> NEWLINE| NONE| PARENT_NOT_SET[ 54/ 54/ 1/ 0][0/0/0][ 0][3-0]
|
||||
# 102> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 44/ 0][0/0/0][ 0][0-0] // enum type : integral_type { ... } x, ...
|
||||
# 102> NEWLINE| NONE| PARENT_NOT_SET[ 44/ 44/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 103> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][ e0000][0-0] enum
|
||||
# 103> TYPE| ENUM| PARENT_NOT_SET[ 6/ 6/ 8/ 1][0/0/0][ 800000][0-0] e1
|
||||
# 103> BIT_COLON| ENUM| PARENT_NOT_SET[ 9/ 9/ 10/ 1][0/0/0][ 200000000][0-0] :
|
||||
# 103> TYPE| BIT_COLON| PARENT_NOT_SET[ 11/ 11/ 15/ 1][0/0/0][ e0000][0-0] long
|
||||
# 103> TYPE| BIT_COLON| PARENT_NOT_SET[ 16/ 16/ 20/ 1][0/0/0][ 0][0-0] long
|
||||
# 103> BRACE_OPEN| ENUM| PARENT_NOT_SET[ 21/ 21/ 22/ 1][0/0/0][ 240000000][0-0] {
|
||||
# 103> WORD| NONE| PARENT_NOT_SET[ 23/ 23/ 25/ 1][1/1/0][ 400c0004][0-0] a1
|
||||
# 103> COMMA| NONE| PARENT_NOT_SET[ 25/ 25/ 26/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 103> WORD| NONE| PARENT_NOT_SET[ 27/ 27/ 29/ 1][1/1/0][ 40080004][0-0] b1
|
||||
# 103> COMMA| NONE| PARENT_NOT_SET[ 29/ 29/ 30/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 103> WORD| NONE| PARENT_NOT_SET[ 31/ 31/ 33/ 1][1/1/0][ 40080004][0-0] d1
|
||||
# 103> BRACE_CLOSE| ENUM| PARENT_NOT_SET[ 34/ 34/ 35/ 1][0/0/0][ 240000004][0-0] }
|
||||
# 103> WORD| NONE| PARENT_NOT_SET[ 36/ 36/ 39/ 1][0/0/0][ 70c0000][0-0] e11
|
||||
# 103> COMMA| NONE| PARENT_NOT_SET[ 39/ 39/ 40/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 103> WORD| NONE| PARENT_NOT_SET[ 41/ 41/ 44/ 1][0/0/0][ 5080000][0-0] e12
|
||||
# 103> COMMA| NONE| PARENT_NOT_SET[ 44/ 44/ 45/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 103> WORD| NONE| PARENT_NOT_SET[ 46/ 46/ 49/ 1][0/0/0][ 5080000][0-0] e13
|
||||
# 103> SEMICOLON| ENUM| PARENT_NOT_SET[ 49/ 49/ 50/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 103> NEWLINE| NONE| PARENT_NOT_SET[ 50/ 50/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 105> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 37/ 0][0/0/0][ 0][0-0] // enum type : integral_type { ... }
|
||||
# 105> NEWLINE| NONE| PARENT_NOT_SET[ 37/ 37/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 106> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][ e0000][0-0] enum
|
||||
# 106> TYPE| ENUM| PARENT_NOT_SET[ 6/ 6/ 8/ 1][0/0/0][ 0][0-0] e2
|
||||
# 106> BIT_COLON| ENUM| PARENT_NOT_SET[ 9/ 9/ 10/ 1][0/0/0][ 200000000][0-0] :
|
||||
# 106> TYPE| BIT_COLON| PARENT_NOT_SET[ 11/ 11/ 19/ 1][0/0/0][ e0000][0-0] unsigned
|
||||
# 106> TYPE| BIT_COLON| PARENT_NOT_SET[ 20/ 20/ 23/ 1][0/0/0][ 0][0-0] int
|
||||
# 106> BRACE_OPEN| ENUM| PARENT_NOT_SET[ 24/ 24/ 25/ 1][0/0/0][ 240000000][0-0] {
|
||||
# 106> WORD| NONE| PARENT_NOT_SET[ 26/ 26/ 28/ 1][1/1/0][ 400c0004][0-0] a2
|
||||
# 106> COMMA| NONE| PARENT_NOT_SET[ 28/ 28/ 29/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 106> WORD| NONE| PARENT_NOT_SET[ 30/ 30/ 32/ 1][1/1/0][ 40080004][0-0] b2
|
||||
# 106> COMMA| NONE| PARENT_NOT_SET[ 32/ 32/ 33/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 106> WORD| NONE| PARENT_NOT_SET[ 34/ 34/ 36/ 1][1/1/0][ 40080004][0-0] d2
|
||||
# 106> BRACE_CLOSE| ENUM| PARENT_NOT_SET[ 37/ 37/ 38/ 1][0/0/0][ 240000004][0-0] }
|
||||
# 106> SEMICOLON| ENUM| PARENT_NOT_SET[ 38/ 38/ 39/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 106> NEWLINE| NONE| PARENT_NOT_SET[ 39/ 39/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 108> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 29/ 0][0/0/0][ 0][0-0] // enum type : integral_type
|
||||
# 108> NEWLINE| NONE| PARENT_NOT_SET[ 29/ 29/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 109> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][1000000e0000][0-0] enum
|
||||
# 109> TYPE| ENUM| PARENT_NOT_SET[ 6/ 6/ 8/ 1][0/0/0][100000000000][0-0] e3
|
||||
# 109> BIT_COLON| ENUM| PARENT_NOT_SET[ 9/ 9/ 10/ 1][0/0/0][ 200000000][0-0] :
|
||||
# 109> TYPE| BIT_COLON| PARENT_NOT_SET[ 11/ 11/ 16/ 1][0/0/0][ c0000][0-0] short
|
||||
# 109> SEMICOLON| ENUM| PARENT_NOT_SET[ 16/ 16/ 17/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 109> NEWLINE| NONE| PARENT_NOT_SET[ 17/ 17/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 111> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 20/ 0][0/0/0][ 0][0-0] // enum type x, ...
|
||||
# 111> NEWLINE| NONE| PARENT_NOT_SET[ 20/ 20/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 112> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][ e0000][0-0] enum
|
||||
# 112> TYPE| ENUM| PARENT_NOT_SET[ 6/ 6/ 8/ 1][0/0/0][ 820000][0-0] e3
|
||||
# 112> WORD| NONE| PARENT_NOT_SET[ 9/ 9/ 12/ 1][0/0/0][ 3000000][0-0] e31
|
||||
# 112> COMMA| NONE| PARENT_NOT_SET[ 12/ 12/ 13/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 112> WORD| NONE| PARENT_NOT_SET[ 14/ 14/ 17/ 1][0/0/0][ 1080000][0-0] e32
|
||||
# 112> SEMICOLON| ENUM| PARENT_NOT_SET[ 17/ 17/ 18/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 112> NEWLINE| NONE| PARENT_NOT_SET[ 18/ 18/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 114> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 50/ 0][0/0/0][ 0][0-0] // enum class type : integral_type { ... } x, ...
|
||||
# 114> NEWLINE| NONE| PARENT_NOT_SET[ 50/ 50/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 115> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][ e0000][0-0] enum
|
||||
# 115> ENUM_CLASS| NONE| PARENT_NOT_SET[ 6/ 6/ 11/ 1][0/0/0][ 20000][0-0] class
|
||||
# 115> TYPE| ENUM| PARENT_NOT_SET[ 12/ 12/ 14/ 1][0/0/0][ 800000][0-0] e4
|
||||
# 115> BIT_COLON| ENUM| PARENT_NOT_SET[ 15/ 15/ 16/ 1][0/0/0][ 200000000][0-0] :
|
||||
# 115> TYPE| BIT_COLON| PARENT_NOT_SET[ 17/ 17/ 21/ 1][0/0/0][ e0000][0-0] long
|
||||
# 115> TYPE| BIT_COLON| PARENT_NOT_SET[ 22/ 22/ 26/ 1][0/0/0][ 0][0-0] long
|
||||
# 115> BRACE_OPEN| ENUM| PARENT_NOT_SET[ 27/ 27/ 28/ 1][0/0/0][ 240000000][0-0] {
|
||||
# 115> WORD| NONE| PARENT_NOT_SET[ 29/ 29/ 31/ 1][1/1/0][ 400c0004][0-0] a4
|
||||
# 115> COMMA| NONE| PARENT_NOT_SET[ 31/ 31/ 32/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 115> WORD| NONE| PARENT_NOT_SET[ 33/ 33/ 35/ 1][1/1/0][ 40080004][0-0] b4
|
||||
# 115> COMMA| NONE| PARENT_NOT_SET[ 35/ 35/ 36/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 115> WORD| NONE| PARENT_NOT_SET[ 37/ 37/ 39/ 1][1/1/0][ 40080004][0-0] d4
|
||||
# 115> BRACE_CLOSE| ENUM| PARENT_NOT_SET[ 40/ 40/ 41/ 1][0/0/0][ 240000004][0-0] }
|
||||
# 115> WORD| NONE| PARENT_NOT_SET[ 42/ 42/ 45/ 1][0/0/0][ 70c0000][0-0] e41
|
||||
# 115> COMMA| NONE| PARENT_NOT_SET[ 45/ 45/ 46/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 115> WORD| NONE| PARENT_NOT_SET[ 47/ 47/ 50/ 1][0/0/0][ 5080000][0-0] e42
|
||||
# 115> COMMA| NONE| PARENT_NOT_SET[ 50/ 50/ 51/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 115> WORD| NONE| PARENT_NOT_SET[ 52/ 52/ 55/ 1][0/0/0][ 5080000][0-0] e43
|
||||
# 115> COMMA| NONE| PARENT_NOT_SET[ 55/ 55/ 56/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 115> WORD| NONE| PARENT_NOT_SET[ 57/ 57/ 60/ 1][0/0/0][ 5080000][0-0] e44
|
||||
# 115> SEMICOLON| ENUM| PARENT_NOT_SET[ 60/ 60/ 61/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 115> NEWLINE| NONE| PARENT_NOT_SET[ 61/ 61/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 117> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 43/ 0][0/0/0][ 0][0-0] // enum class type : integral_type { ... }
|
||||
# 117> NEWLINE| NONE| PARENT_NOT_SET[ 43/ 43/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 118> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][ e0000][0-0] enum
|
||||
# 118> ENUM_CLASS| NONE| PARENT_NOT_SET[ 6/ 6/ 11/ 1][0/0/0][ 20000][0-0] class
|
||||
# 118> TYPE| ENUM| PARENT_NOT_SET[ 12/ 12/ 14/ 1][0/0/0][ 0][0-0] e5
|
||||
# 118> BIT_COLON| ENUM| PARENT_NOT_SET[ 15/ 15/ 16/ 1][0/0/0][ 200000000][0-0] :
|
||||
# 118> TYPE| BIT_COLON| PARENT_NOT_SET[ 17/ 17/ 25/ 1][0/0/0][ e0000][0-0] unsigned
|
||||
# 118> TYPE| BIT_COLON| PARENT_NOT_SET[ 26/ 26/ 29/ 1][0/0/0][ 0][0-0] int
|
||||
# 118> BRACE_OPEN| ENUM| PARENT_NOT_SET[ 30/ 30/ 31/ 1][0/0/0][ 240000000][0-0] {
|
||||
# 118> WORD| NONE| PARENT_NOT_SET[ 32/ 32/ 34/ 1][1/1/0][ 400c0004][0-0] a5
|
||||
# 118> COMMA| NONE| PARENT_NOT_SET[ 34/ 34/ 35/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 118> WORD| NONE| PARENT_NOT_SET[ 36/ 36/ 38/ 1][1/1/0][ 40080004][0-0] b5
|
||||
# 118> COMMA| NONE| PARENT_NOT_SET[ 38/ 38/ 39/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 118> WORD| NONE| PARENT_NOT_SET[ 40/ 40/ 42/ 1][1/1/0][ 40080004][0-0] d5
|
||||
# 118> BRACE_CLOSE| ENUM| PARENT_NOT_SET[ 43/ 43/ 44/ 1][0/0/0][ 240000004][0-0] }
|
||||
# 118> SEMICOLON| ENUM| PARENT_NOT_SET[ 44/ 44/ 45/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 118> NEWLINE| NONE| PARENT_NOT_SET[ 45/ 45/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 120> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 35/ 0][0/0/0][ 0][0-0] // enum class type : integral_type
|
||||
# 120> NEWLINE| NONE| PARENT_NOT_SET[ 35/ 35/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 121> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][1000000e0000][0-0] enum
|
||||
# 121> ENUM_CLASS| NONE| PARENT_NOT_SET[ 6/ 6/ 11/ 1][0/0/0][100000020000][0-0] class
|
||||
# 121> TYPE| ENUM| PARENT_NOT_SET[ 12/ 12/ 14/ 1][0/0/0][100000000000][0-0] e6
|
||||
# 121> BIT_COLON| ENUM| PARENT_NOT_SET[ 15/ 15/ 16/ 1][0/0/0][ 200000000][0-0] :
|
||||
# 121> TYPE| BIT_COLON| PARENT_NOT_SET[ 17/ 17/ 22/ 1][0/0/0][ c0000][0-0] short
|
||||
# 121> SEMICOLON| ENUM| PARENT_NOT_SET[ 22/ 22/ 23/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 121> NEWLINE| NONE| PARENT_NOT_SET[ 23/ 23/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 123> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 19/ 0][0/0/0][ 0][0-0] // enum class type
|
||||
# 123> NEWLINE| NONE| PARENT_NOT_SET[ 19/ 19/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 124> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][1000000e0000][0-0] enum
|
||||
# 124> ENUM_CLASS| NONE| PARENT_NOT_SET[ 6/ 6/ 11/ 1][0/0/0][100000020000][0-0] class
|
||||
# 124> TYPE| ENUM| PARENT_NOT_SET[ 12/ 12/ 14/ 1][0/0/0][100000000000][0-0] e7
|
||||
# 124> SEMICOLON| ENUM| PARENT_NOT_SET[ 14/ 14/ 15/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 124> NEWLINE| NONE| PARENT_NOT_SET[ 15/ 15/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 126> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 39/ 0][0/0/0][ 0][0-0] // enum : integral_type { ... } x, ...
|
||||
# 126> NEWLINE| NONE| PARENT_NOT_SET[ 39/ 39/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 127> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][ c0000][0-0] enum
|
||||
# 127> BIT_COLON| ENUM| PARENT_NOT_SET[ 6/ 6/ 7/ 1][0/0/0][ 200000000][0-0] :
|
||||
# 127> TYPE| BIT_COLON| PARENT_NOT_SET[ 8/ 8/ 12/ 1][0/0/0][ e0000][0-0] long
|
||||
# 127> TYPE| BIT_COLON| PARENT_NOT_SET[ 13/ 13/ 17/ 1][0/0/0][ 0][0-0] long
|
||||
# 127> BRACE_OPEN| ENUM| PARENT_NOT_SET[ 18/ 18/ 19/ 1][0/0/0][ 240000000][0-0] {
|
||||
# 127> WORD| NONE| PARENT_NOT_SET[ 20/ 20/ 22/ 1][1/1/0][ 400c0004][0-0] a8
|
||||
# 127> COMMA| NONE| PARENT_NOT_SET[ 22/ 22/ 23/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 127> WORD| NONE| PARENT_NOT_SET[ 24/ 24/ 26/ 1][1/1/0][ 40080004][0-0] b8
|
||||
# 127> COMMA| NONE| PARENT_NOT_SET[ 26/ 26/ 27/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 127> WORD| NONE| PARENT_NOT_SET[ 28/ 28/ 30/ 1][1/1/0][ 40080004][0-0] c8
|
||||
# 127> BRACE_CLOSE| ENUM| PARENT_NOT_SET[ 31/ 31/ 32/ 1][0/0/0][ 240000004][0-0] }
|
||||
# 127> WORD| NONE| PARENT_NOT_SET[ 33/ 33/ 36/ 1][0/0/0][ 70c0000][0-0] e81
|
||||
# 127> COMMA| NONE| PARENT_NOT_SET[ 36/ 36/ 37/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 127> WORD| NONE| PARENT_NOT_SET[ 38/ 38/ 41/ 1][0/0/0][ 5080000][0-0] e82
|
||||
# 127> SEMICOLON| ENUM| PARENT_NOT_SET[ 41/ 41/ 42/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 127> NEWLINE| NONE| PARENT_NOT_SET[ 42/ 42/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 129> COMMENT_CPP| COMMENT_WHOLE| PARENT_NOT_SET[ 1/ 1/ 23/ 0][0/0/0][ 0][0-0] // enum { ... } x, ...
|
||||
# 129> NEWLINE| NONE| PARENT_NOT_SET[ 23/ 23/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# 130> ENUM| NONE| PARENT_NOT_SET[ 1/ 1/ 5/ 0][0/0/0][ c0000][0-0] enum
|
||||
# 130> BRACE_OPEN| ENUM| PARENT_NOT_SET[ 6/ 6/ 7/ 1][0/0/0][ 240000000][0-0] {
|
||||
# 130> WORD| NONE| PARENT_NOT_SET[ 8/ 8/ 10/ 1][1/1/0][ 400c0004][0-0] a9
|
||||
# 130> COMMA| NONE| PARENT_NOT_SET[ 10/ 10/ 11/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 130> WORD| NONE| PARENT_NOT_SET[ 12/ 12/ 14/ 1][1/1/0][ 40080004][0-0] b9
|
||||
# 130> COMMA| NONE| PARENT_NOT_SET[ 14/ 14/ 15/ 0][1/1/0][ 240000004][0-0] ,
|
||||
# 130> WORD| NONE| PARENT_NOT_SET[ 16/ 16/ 18/ 1][1/1/0][ 40080004][0-0] c9
|
||||
# 130> BRACE_CLOSE| ENUM| PARENT_NOT_SET[ 19/ 19/ 20/ 1][0/0/0][ 240000004][0-0] }
|
||||
# 130> WORD| NONE| PARENT_NOT_SET[ 21/ 21/ 24/ 1][0/0/0][ 70c0000][0-0] e91
|
||||
# 130> COMMA| NONE| PARENT_NOT_SET[ 24/ 24/ 25/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 130> WORD| NONE| PARENT_NOT_SET[ 26/ 26/ 29/ 1][0/0/0][ 5080000][0-0] e92
|
||||
# 130> SEMICOLON| ENUM| PARENT_NOT_SET[ 29/ 29/ 30/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 130> NEWLINE| NONE| PARENT_NOT_SET[ 30/ 30/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 132> UNION| NONE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][0/0/0][ e0000][0-0] union
|
||||
# 132> WORD| NONE| PARENT_NOT_SET[ 7/ 7/ 17/ 1][0/0/0][ 20000][0-0] API_EXPORT
|
||||
# 132> TYPE| UNION| PARENT_NOT_SET[ 18/ 18/ 20/ 1][0/0/0][ 800000][0-0] u1
|
||||
# 132> BRACE_OPEN| UNION| PARENT_NOT_SET[ 21/ 21/ 22/ 1][0/0/0][ 240000000][0-0] {
|
||||
# 132> TYPE| NONE| PARENT_NOT_SET[ 23/ 23/ 26/ 1][1/1/0][ 408e0000][0-0] int
|
||||
# 132> WORD| NONE| PARENT_NOT_SET[ 27/ 27/ 28/ 1][1/1/0][ 43000000][0-0] x
|
||||
# 132> SEMICOLON| NONE| PARENT_NOT_SET[ 28/ 28/ 29/ 0][1/1/0][ 240000000][0-0] ;
|
||||
# 132> TYPE| NONE| PARENT_NOT_SET[ 30/ 30/ 34/ 1][1/1/0][ 408e0000][0-0] long
|
||||
# 132> WORD| NONE| PARENT_NOT_SET[ 35/ 35/ 36/ 1][1/1/0][ 43000000][0-0] y
|
||||
# 132> SEMICOLON| NONE| PARENT_NOT_SET[ 36/ 36/ 37/ 0][1/1/0][ 240000000][0-0] ;
|
||||
# 132> BRACE_CLOSE| UNION| PARENT_NOT_SET[ 38/ 38/ 39/ 1][0/0/0][ 240000000][0-0] }
|
||||
# 132> WORD| NONE| PARENT_NOT_SET[ 40/ 40/ 43/ 1][0/0/0][ 70c0000][0-0] u11
|
||||
# 132> COMMA| NONE| PARENT_NOT_SET[ 43/ 43/ 44/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 132> PTR_TYPE| UNION| PARENT_NOT_SET[ 45/ 45/ 46/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 132> WORD| NONE| PARENT_NOT_SET[ 46/ 46/ 49/ 0][0/0/0][ 25080000][0-0] u12
|
||||
# 132> ASSIGN| NONE| PARENT_NOT_SET[ 50/ 50/ 51/ 1][0/0/0][ 200000000][0-0] =
|
||||
# 132> WORD| NONE| PARENT_NOT_SET[ 52/ 52/ 59/ 1][0/0/0][ 80000][0-0] nullptr
|
||||
# 132> COMMA| NONE| PARENT_NOT_SET[ 59/ 59/ 60/ 0][0/0/0][ 200000000][0-0] ,
|
||||
# 132> PTR_TYPE| UNION| PARENT_NOT_SET[ 61/ 61/ 62/ 1][0/0/0][ 200080000][0-0] *
|
||||
# 132> WORD| NONE| PARENT_NOT_SET[ 62/ 62/ 65/ 0][0/0/0][ 25080000][0-0] u13
|
||||
# 132> BRACE_OPEN| BRACED_INIT_LIST| PARENT_NOT_SET[ 65/ 65/ 66/ 0][0/0/0][ 240000000][0-0] {
|
||||
# 132> NUMBER| NONE| PARENT_NOT_SET[ 66/ 66/ 67/ 0][1/1/0][ 400c0000][0-0] 0
|
||||
# 132> BRACE_CLOSE| BRACED_INIT_LIST| PARENT_NOT_SET[ 67/ 67/ 68/ 0][0/0/0][ 240000000][0-0] }
|
||||
# 132> SEMICOLON| UNION| PARENT_NOT_SET[ 68/ 68/ 69/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 132> NEWLINE| NONE| PARENT_NOT_SET[ 69/ 69/ 1/ 0][0/0/0][ 0][2-0]
|
||||
# 134> UNION| NONE| PARENT_NOT_SET[ 1/ 1/ 6/ 0][0/0/0][ e0000][0-0] union
|
||||
# 134> WORD| NONE| PARENT_NOT_SET[ 7/ 7/ 17/ 1][0/0/0][ 20000][0-0] API_EXPORT
|
||||
# 134> TYPE| UNION| PARENT_NOT_SET[ 18/ 18/ 20/ 1][0/0/0][ 820000][0-0] u1
|
||||
# 134> WORD| NONE| PARENT_NOT_SET[ 21/ 21/ 24/ 1][0/0/0][ 3000000][0-0] u21
|
||||
# 134> SEMICOLON| UNION| PARENT_NOT_SET[ 24/ 24/ 25/ 0][0/0/0][ 200000000][0-0] ;
|
||||
# 134> NEWLINE| NONE| PARENT_NOT_SET[ 25/ 25/ 1/ 0][0/0/0][ 0][1-0]
|
||||
# -=====-
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,23 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
|
||||
<title>Uncrustify: where do the Spaces options work</title>
|
||||
</head>
|
||||
<body lang="en-US">
|
||||
<p>
|
||||
</p>
|
||||
<pre>
|
||||
{
|
||||
a = b + 111 - 55;
|
||||
}
|
||||
template<typename ... A, int... B>
|
||||
struct foo1 : foo1<A..., (sizeof...(A) + B)...>
|
||||
{
|
||||
foo1() {
|
||||
int x = sizeof...(A);
|
||||
bool b = x > 1;
|
||||
}
|
||||
};
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,16 @@
|
||||
output_text : text() is '// 1 6789A123456789B123456789c12345678 ... <The string is truncated>', type is COMMENT_CPP, orig_line is 1, column is 1, nl is 0
|
||||
output_cmt_start : no cmt_insert_file
|
||||
output_comment_cpp : set cont_text to '// '
|
||||
output_text : text() is '', type is NEWLINE, orig_line is 1, column is 74, nl is 1
|
||||
output_text : text() is '// 2 678 ... <The string is truncated>', type is COMMENT_CPP, orig_line is 2, column is 1, nl is 0
|
||||
output_cmt_start : no cmt_insert_file
|
||||
output_comment_cpp : set cont_text to '// '
|
||||
output_text : text() is '', type is NEWLINE, orig_line is 2, column is 40, nl is 1
|
||||
output_text : text() is '// 3 6789A123456789B123456789c12345678', type is COMMENT_CPP, orig_line is 3, column is 1, nl is 0
|
||||
output_cmt_start : no cmt_insert_file
|
||||
output_comment_cpp : set cont_text to '// '
|
||||
output_text : text() is '', type is NEWLINE, orig_line is 3, column is 39, nl is 1
|
||||
output_text : text() is '// 4 6789A123456789B123456789c1234567', type is COMMENT_CPP, orig_line is 4, column is 1, nl is 0
|
||||
output_cmt_start : no cmt_insert_file
|
||||
output_comment_cpp : set cont_text to '// '
|
||||
output_text : text() is '', type is NEWLINE, orig_line is 4, column is 38, nl is 1
|
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue