|
|
@ -554,21 +554,22 @@ export class TemplateRecord extends SymbolTableRecord
|
|
|
|
//计算DIV(给子空间使用)
|
|
|
|
//计算DIV(给子空间使用)
|
|
|
|
if (template.Children.length > 0 && template.SplitType !== TemplateSplitType.None)
|
|
|
|
if (template.Children.length > 0 && template.SplitType !== TemplateSplitType.None)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
let vardefines = (<TemplateRecord>template.Children[0].Object).GetParameterDefinition(false);
|
|
|
|
let sum = 0;//除去div时,总共占用的空间
|
|
|
|
vardefines._DIV = 0;
|
|
|
|
|
|
|
|
let sum = 0;
|
|
|
|
|
|
|
|
for (let c of template.Children)
|
|
|
|
for (let c of template.Children)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
let ctemplate = c.Object as TemplateRecord;
|
|
|
|
let ctemplate = c.Object as TemplateRecord;
|
|
|
|
|
|
|
|
let vardefines = ctemplate.GetParameterDefinition(false);
|
|
|
|
|
|
|
|
vardefines._DIV = 0;
|
|
|
|
let param = ctemplate.Params[template.SplitType];
|
|
|
|
let param = ctemplate.Params[template.SplitType];
|
|
|
|
sum += param.EvalUpdate(vardefines, new Map(), new Set(), false);
|
|
|
|
sum += param.EvalUpdate(vardefines, new Map(), new Set(), false);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
let sumDiv = 0;
|
|
|
|
let sumDiv = 0;//div=1时占用的空间
|
|
|
|
vardefines._DIV = 1;
|
|
|
|
|
|
|
|
for (let c of template.Children)
|
|
|
|
for (let c of template.Children)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
let ctemplate = c.Object as TemplateRecord;
|
|
|
|
let ctemplate = c.Object as TemplateRecord;
|
|
|
|
|
|
|
|
let vardefines = ctemplate.GetParameterDefinition(false);
|
|
|
|
|
|
|
|
vardefines._DIV = 1;
|
|
|
|
let param = ctemplate.Params[template.SplitType];
|
|
|
|
let param = ctemplate.Params[template.SplitType];
|
|
|
|
sumDiv += param.EvalUpdate(vardefines, new Map(), new Set(), false);
|
|
|
|
sumDiv += param.EvalUpdate(vardefines, new Map(), new Set(), false);
|
|
|
|
}
|
|
|
|
}
|
|
|
|