MCPcopy Index your code
hub / github.com/beanshell/beanshell / ClassDeclaration

Method ClassDeclaration

src/bsh/Parser.java:296–366  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

294/**
295*/
296 final public void ClassDeclaration() throws ParseException {
297 /*@bgen(jjtree) ClassDeclaration */
298 BSHClassDeclaration jjtn000 = new BSHClassDeclaration(JJTCLASSDECLARATION);
299 boolean jjtc000 = true;
300 jjtree.openNodeScope(jjtn000);
301 jjtreeOpenNodeScope(jjtn000);Modifiers mods;
302 Token name;
303 int numInterfaces;
304 try {
305 mods = Modifiers(Modifiers.CLASS, false);
306 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
307 case CLASS:
308 jj_consume_token(CLASS);
309 break;
310 case INTERFACE:
311 jj_consume_token(INTERFACE);
312 jjtn000.isInterface=true;
313 break;
314 default:
315 jj_la1[3] = jj_gen;
316 jj_consume_token(-1);
317 throw new ParseException();
318 }
319 name = jj_consume_token(IDENTIFIER);
320 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
321 case EXTENDS:
322 jj_consume_token(EXTENDS);
323 AmbiguousName();
324 jjtn000.extend = true;
325 break;
326 default:
327 jj_la1[4] = jj_gen;
328 ;
329 }
330 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
331 case IMPLEMENTS:
332 jj_consume_token(IMPLEMENTS);
333 numInterfaces = NameList();
334 jjtn000.numInterfaces=numInterfaces;
335 break;
336 default:
337 jj_la1[5] = jj_gen;
338 ;
339 }
340 Block();
341 jjtree.closeNodeScope(jjtn000, true);
342 jjtc000 = false;
343 jjtreeCloseNodeScope(jjtn000);
344 jjtn000.modifiers = mods;
345 jjtn000.name = name.image;
346 } catch (Throwable jjte000) {
347 if (jjtc000) {
348 jjtree.clearNodeScope(jjtn000);
349 jjtc000 = false;
350 } else {
351 jjtree.popNode();
352 }
353 if (jjte000 instanceof RuntimeException) {

Callers 1

BlockStatementMethod · 0.95

Calls 12

jjtreeOpenNodeScopeMethod · 0.95
ModifiersMethod · 0.95
jj_ntkMethod · 0.95
jj_consume_tokenMethod · 0.95
AmbiguousNameMethod · 0.95
NameListMethod · 0.95
BlockMethod · 0.95
jjtreeCloseNodeScopeMethod · 0.95
openNodeScopeMethod · 0.80
closeNodeScopeMethod · 0.80
clearNodeScopeMethod · 0.80
popNodeMethod · 0.45

Tested by

no test coverage detected