public DumpStack ( IList |
||
tokenlist | IList |
|
return | string |
public string DumpStack(IList<Token> tokenlist)
{
string svalues = "";
if (useDebug)
{
if(this.CallType!=null&&this.CallType.tokenlist!=null)
{
tokenlist = this.CallType.tokenlist;
}
foreach(var subc in this.stackContent)
{
svalues += subc.DumpStack(tokenlist);
}
svalues += "DumpStack:" + this.CallName + "\n";
foreach(var s in stackExpr)
{
if ((s.tokenBegin == 0 && s.tokenEnd == 0)||tokenlist==null)
{
svalues += "<C#LE>:line(" + s.lineBegin + "-" + s.lineEnd + ")\n";
}
else
{
svalues += "<C#LE>:line(" + s.lineBegin + "-" + s.lineEnd + ")";
if (s.tokenEnd - s.tokenBegin >= 20)
{
for(int i=s.tokenBegin;i<s.tokenBegin+8;i++)
{
svalues += tokenlist[i].text + " ";
}
svalues += "...";
for (int i = s.tokenEnd-7; i <= s.tokenEnd; i++)
{
svalues += tokenlist[i].text + " ";
}
}
else
{
for (int i = s.tokenBegin; i <= s.tokenEnd; i++)
{
svalues += tokenlist[i].text + " ";
}
}
svalues += "\n";
}
}
}
return svalues;
}
public string Dump()
public CLS_Content.Value ComputeValue(CLS_Content content) { CLS_Content.Value srcVal = listParam[0].ComputeValue(content); // 不能直接修改srcVal CLS_Content.Value val = new CLS_Content.Value(); val.type = srcVal.type; val.value = srcVal.value; val.breakBlock = srcVal.breakBlock; val.breakBlock += 10; #if UNITY_EDITOR if (val.value is System.Collections.IEnumerator) throw new Exception("Dont support yield return IEnumerator, please use StartCoroutine(IEnumerator) instead: " + content.DumpStack()); #endif return val; }