public bool AnalyzeLine(string str) { ScriptLine line = new ScriptLine(str); string word = new string(new char[STR_MAXLEN]); line.Skip(" \t"); if (!line.GetWord(ref word, " \t(=+-*/[")) { return(true); } TokenInfo tokenInfo; if (!m_tokenMap.Get(word, out tokenInfo)) { Error("AnalyzeLine - [{0}] is not a tokenMap", word); return(false); } if (tokenInfo.type == TOKENTYPE.TOKENTYPE_COMMAND) { if (!OnControl(line, tokenInfo.num)) { return(false); } } Parsing Parse = new Parsing(); if (!Parse.Run(line.GetBase(), "$")) { Error("(,) error type AnalyzeLine 1"); return(false); } for (int i = 0; i < Parse.GetNum(); i++) { var p = Parse.Get(i); if (!AnalyzeParse(ref p)) { return(false); } } return(true); }