Alexandria.Plugins.General.LuaInstruction.GetArgumentConstant C# (CSharp) Method

GetArgumentConstant() private method

private GetArgumentConstant ( int value, bool quotes = false ) : string
value int
quotes bool
return string
        string GetArgumentConstant(int value, bool quotes = false)
        {
            if (value >= Function.Constants.Count)
                return "K(Invalid index " + value + ")";
            object constant = Function.Constants[value];

            if (constant == null)
                return "nil";

            if (constant is string) {
                foreach (char ch in (string)constant) {
                    if (!char.IsLetterOrDigit(ch) && ch != '_')
                        quotes = true;
                }

                if ((string)constant == "nil")
                    quotes = true;
                return quotes ? "\"" + constant + "\"" : constant.ToString();
            }

            if (constant is double)
                return constant.ToString();

            return "K(" + constant + ")";
        }