public SwitchCases(SwitchScript parent, Dictionary <IFunctionGeneric, IScript> cases) : this(parent) { foreach (var switchCase in cases) { IFunctionGeneric compiledExpression = switchCase.Key; string caseString = compiledExpression.Save(); IScript script = switchCase.Value; if (m_cases.ContainsKey(caseString)) { throw new Exception(string.Format("'switch' block contains duplicate case '{0}'", caseString)); } m_cases.Add(caseString, script); m_compiledExpressions.Add(caseString, compiledExpression); } }
public override string Save() { return(SaveScript("return", m_returnValue.Save())); }
public override string Save() { return(SaveScript("list add", m_list.Save(), m_value.Save())); }
public override string Save() { return(SaveScript("requestspeak", m_function.Save())); }
public override string Save() { return(SaveScript("foreach", m_loopScript, m_variable, m_list.Save())); }
public override string Save() { return(SaveScript("show menu", m_callbackScript, m_caption.Save(), m_options.Save(), m_allowCancel.Save())); }
public override string Save() { return(SaveScript("dictionary add", m_dictionary.Save(), m_key.Save(), m_value.Save())); }
public override string Save() { return(SaveScript("dictionary remove", m_dictionary.Save(), m_key.Save())); }
public override string Save() { return(SaveScript("msg", m_function.Save())); }