AK.SymbolList.ToString C# (CSharp) Method

ToString() public method

public ToString ( ) : string
return string
        public override string ToString()
        {
            var l = this;
            string r = "";
            for (int i=0;i<l.symbols.Count;i++) {
                var s = l.getSymbol(i);
                switch (s.type) {
                case SymbolType.Pow:
                    r+=(l.getSymbol(i+1));
                    r+=("^");
                    r+=(l.getSymbol(i+2));
                    i+=2;
                    break;
                case SymbolType.FuncCustom: {
                    r += s.customFunc.name + "(";
                    r+=(l.getSymbol(i+1));
                    if (s.customFunc.paramCount>1) {
                        for (int j=1;j<s.customFunc.paramCount;j++) {
                            r += ",";
                            r+=l.getSymbol(i+1+j);
                        }
                    }
                    r += ")";
                    i+= s.customFunc.paramCount;
                }
                    break;
                case SymbolType.RealValue:
                case SymbolType.SubExpression:
                    r+=(s);
                    if (i<l.symbols.Count-1) {
                        if (l.getSymbol(i+1).IsRealValueType()) {
                            r+=("*");
                        }
                    }
                    break;
                default:
                    r+=(s);
                    break;
                }
            }
            return r;
        }