private void LoadTaskInterpreter()
        {
            lock (LispTaskInterperterLock)
                try
                {
                    if (_LispTaskInterperter != null)
                    {
                        return;
                    }
                    //WriteLine("Start Loading TaskInterperter ... '" + TaskInterperterType + "' \n");
                    _LispTaskInterperter = ClientManager.SingleInstance.TaskInterperter.newInterpreter(this);
                    _LispTaskInterperter.LoadFile("cogbot.lisp", DebugWriteLine);
                    Intern("clientManager", ClientManager);
                    Intern("client", this);
                    if (scriptEventListener == null)
                    {
                        scriptEventListener = new ScriptEventListener(_LispTaskInterperter, this);
                        botPipeline.AddSubscriber(scriptEventListener);
                    }

                    //  WriteLine("Completed Loading TaskInterperter '" + TaskInterperterType + "'\n");
                    // load the initialization string
                    CatchUpInterns();
                }
                catch (Exception e)
                {
                    LogException("LoadTaskInterperter", e);
                }
        }
示例#2
0
 internal string argString(object p)
 {
     if (scriptEventListener == null)
     {
         return("" + p);
     }
     return(ScriptEventListener.argString(p));
 }
示例#3
0
 internal string argsListString(IEnumerable list)
 {
     if (scriptEventListener == null)
     {
         return("" + list);
     }
     return(ScriptEventListener.argsListString(list));
 }
        } // method: Eval

        /// <summary>
        ///
        /// </summary>
        /// <param name="code"></param>
        /// <returns></returns>
        public override string Str(object code)
        {
            return(ScriptEventListener.argString(code));
        } // method: Str