//-----------Добавим встроенные функции------------------ void initialize_internal_functions() { //В принципе, список функций должен браться из dll , вызываться тоже из dll. //Пока берем список из xml, а описаны в коде string name = "", ret_type = ""; int num_param = 0, has_event = 0; int cnt = 0; XmlTextReader reader = new XmlTextReader("../../../webBrowser/internal_functions.xml"); //reader.Read(); while (reader.Read()) { if (reader.NodeType == XmlNodeType.Element) { while (reader.MoveToNextAttribute()) { switch (reader.Name) { case "name": name = reader.Value; break; case "num_param": num_param = Convert.ToInt32(reader.Value); break; case "ret_type": ret_type = reader.Value; break; case "event": has_event = Convert.ToInt32(reader.Value); break; default: break; } } if (name != "") { tableId.incCnt(name); tableId.set_num_of_param(num_param); switch (ret_type) { case "bool": tableId.putTypeOfFunc(Type_of_lex._bool); break; case "string": tableId.putTypeOfFunc(Type_of_lex._string); break; case "htmlelement": tableId.putTypeOfFunc(Type_of_lex._htmlelement); break; case "htmlelementcollect": tableId.putTypeOfFunc(Type_of_lex._htmlelementcollect); break; case "int": tableId.putTypeOfFunc(Type_of_lex._int); break; default: tableId.putTypeOfFunc(Type_of_lex._void); break; } name = ""; cnt++; if (has_event == 1) { tableId.set_has_event_func(); } } } } tableId.set_inet_func_num(cnt); }