Warning: session_start(): open(/var/lib/php/sessions/sess_ukg26r3sg26d8esgputnsj9ope, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
static HashSet allClasses_keywords = lithashset("class", "interface", "enum", "sclass", "sinterface", "record", "srecord", "asclass", "concept");
// lists returned are actual CNC (N/C/N/.../C/N) - and connected to
// original list
// only returns the top level classes
static LL allClasses(L tok) {
LL l = new ArrayList;
int n = tok.size();
HashSet _allClasses_keywords = allClasses_keywords;
for (int i = 1; i < n; i += 2) {
S t = tok.get(i);
if ("{".equals(t)) // skip functions
i = findEndOfBlock(tok, i)-1;
else if (_allClasses_keywords.contains(t)
&& (tok_isJavaxMetaCommandLeftOf(tok, i) ||
!eqGetOneOf(tok, i-2, ".", "include"))) {
int j = i;
while (j < n && !tok.get(j).equals("{"))
j += 2;
j = findEndOfBlock(tok, j)+1;
i = leftScanModifiers(tok, i);
l.add(tok.subList(i-1, Math.min(n, j)));
i = j-2;
}
}
ret l;
}
static LL allClasses(S text) {
ret allClasses(javaTok(text));
}