コード例 #1
0
ファイル: ScriptException.cs プロジェクト: hstde/Calc2
 public static ScriptException CreateScriptException(object payload, SourceInfo location, ScriptStackTrace stack)
 => new ScriptException(payload as string ?? "ScriptException", null, location, stack)
 {
     Payload = payload
 };
コード例 #2
0
ファイル: Closure.cs プロジェクト: hstde/Calc2
        public static string MakeString(string name, int paramCount, string[] paramNames, SourceInfo loc, bool hasParamsArg)
        {
            string[] paramNamesLoc = null;
            if (paramNames != null)
            {
                paramNamesLoc = new string[paramNames.Length];
                Array.Copy(paramNames, paramNamesLoc, paramNames.Length);
            }
            var ret       = name;
            var argString = "";

            if (paramNamesLoc == null && paramCount > 0)
            {
                argString = paramCount.ToString();
            }
            else if (paramNamesLoc != null)
            {
                if (hasParamsArg)
                {
                    paramNamesLoc[paramNamesLoc.Length - 1] = "params " + paramNamesLoc[paramNamesLoc.Length - 1];
                }
                argString = string.Join(", ", paramNamesLoc);
            }
            ret += "(" + argString + ")";

            return(ret + " in " + loc.FileName + ":Line " + (loc.SourceLocation.Line + 1));
        }
コード例 #3
0
ファイル: ScriptException.cs プロジェクト: hstde/Calc2
 public ScriptException(string message, Exception inner, SourceInfo location, ScriptStackTrace stack) : base(message, inner)
 {
     Location         = location;
     ScriptStackTrace = stack;
 }