Skip to content
Snippets Groups Projects
Commit c1f4ed81 authored by Johannes Mey's avatar Johannes Mey
Browse files

Merge commit 'ec7182cf'

parents 690898d9 ec7182cf
No related branches found
No related tags found
No related merge requests found
......@@ -317,7 +317,8 @@ public class Configuration {
.addAcceptedValue("full", "flushing of all computed values (combines attr, coll, and rewrite)")
.addDefaultValue("attr", "adds flushing of attributes (syn,inh)")
.addDefaultValue("coll", "adds flushing of collection attributes")
.addAcceptedValue("rewrite", "adds flushing of rewrites");
.addAcceptedValue("rewrite", "adds flushing of rewrites")
.addAcceptedValue("api", "flushing is disabled, but generate methods");
ValueOption packageNameOption = new ValueOption("package",
"optional package name for generated classes");
......@@ -1155,10 +1156,10 @@ public class Configuration {
}
/**
* @return {@code true} if --flush=none
* @return {@code true} if not --flush=api
*/
public boolean flushEnabled() {
return !flushOption.hasValue("none");
return !flushOption.hasValue("api");
}
/**
......
......@@ -26,10 +26,10 @@
# POSSIBILITY OF SUCH DAMAGE.
ASTNode.flushTreeCacheMethod [[
$if(FlushEnabled)
$if(#isASTNodeDecl)
/** @apilevel low-level */
public void $ASTNode.flushTreeCache() {
$if(FlushEnabled)
flushCache();
if (children != null) {
for (int i = 0; i < children.length; i++) {
......@@ -42,61 +42,65 @@ $if(#isASTNodeDecl)
}
}
}
}
$endif
}
$endif
]]
ASTDecl.flushCacheMethod [[
$if(FlushEnabled)
$if(#isASTNodeDecl)
/** @apilevel low-level */
public void #name.flushCache() {
$if(FlushEnabled)
flushAttrAndCollectionCache();
}
$endif
}
$endif
]]
ASTDecl.flushAttrAndCollectionCacheMethod [[
$if(FlushEnabled)
$if(#isASTNodeDecl)
/** @apilevel internal */
public void #name.flushAttrAndCollectionCache() {
$if(FlushEnabled)
$if(FlushAttr)
flushAttrCache();
$endif
$if(FlushColl)
flushCollectionCache();
$endif
}
$endif
}
$endif
]]
ASTDecl.flushAttrCacheMethod [[
$if(FlushAttr)
/** @apilevel internal */
public void #name.flushAttrCache() {
$if(FlushEnabled)
$if(FlushAttr)
$if(!#isASTNodeDecl)
super.flushAttrCache();
$endif
$FlushAttrCacheBody
}
$endif
$endif
}
]]
ASTDecl.flushCollectionCacheMethod [[
$if(FlushColl)
/** @apilevel internal */
public void #name.flushCollectionCache() {
$if(FlushEnabled)
$if(FlushColl)
$if(!#isASTNodeDecl)
super.flushCollectionCache();
$endif
#flushCollectionCacheCode
}
$endif
$endif
}
]]
# TODO: Figure out if this can be removed
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment