MCPcopy Index your code
hub / github.com/antlr/codebuff / rawDefineTemplate

Method rawDefineTemplate

output/java8/1.4.17/STGroup.java:438–462  ·  view source on GitHub ↗
(String name, CompiledST code, Token defT)

Source from the content-addressed store, hash-verified

436 }
437
438 public void rawDefineTemplate(String name, CompiledST code, Token defT) {
439 CompiledST prev = rawGetTemplate(name);
440 if ( prev!=null ) {
441 if ( !prev.isRegion ) {
442 errMgr.compileTimeError(ErrorType.TEMPLATE_REDEFINITION, null, defT);
443 return;
444 }
445 else {
446 if ( code.regionDefType!= ST.RegionType.IMPLICIT && prev.regionDefType==ST.RegionType.EMBEDDED ) {
447 errMgr.compileTimeError(ErrorType.EMBEDDED_REGION_REDEFINITION, null, defT, getUnMangledTemplateName(name));
448 return;
449 }
450 else if ( code.regionDefType==ST.RegionType.IMPLICIT || prev.regionDefType==ST.RegionType.EXPLICIT ) {
451 errMgr.compileTimeError(ErrorType.REGION_REDEFINITION,
452 null,
453 defT,
454 getUnMangledTemplateName(name));
455 return;
456 }
457 }
458 }
459 code.nativeGroup = this;
460 code.templateDefStartToken = defT;
461 templates.put(name, code);
462 }
463
464 public void undefineTemplate(String name) {
465 templates.remove(name);

Callers 5

defineTemplateMethod · 0.95
defineTemplateAliasMethod · 0.95
defineRegionMethod · 0.95
loadTemplateFileMethod · 0.45

Calls 4

rawGetTemplateMethod · 0.95
compileTimeErrorMethod · 0.65
putMethod · 0.65

Tested by

no test coverage detected