AjTalk.Language.DoesNotUnderstandMethod.DoesNotUnderstand C# (CSharp) Метод

DoesNotUnderstand() защищенный Метод

protected DoesNotUnderstand ( Interpreter interpreter, IObject self, string msgname, object args ) : object
interpreter Interpreter
self IObject
msgname string
args object
Результат object
        protected virtual object DoesNotUnderstand(Interpreter interpreter, IObject self, string msgname, object[] args)
        {
            if (interpreter.Machine.HostMachine != null)
            {
                IBehavior behavior = interpreter.Machine.HostMachine.GetAssociatedBehavior(self.Behavior);

                if (behavior != null)
                {
                    IMethod method = behavior.GetInstanceMethod(msgname);

                    if (method != null)
                        return method.ExecuteInInterpreter(interpreter, self, args);

                    method = behavior.GetInstanceMethod(this.Name);

                    if (method != null)
                        return method.ExecuteInInterpreter(interpreter, self, new object[] { msgname, args });
                }
            }

            return DotNetObject.SendMessage(interpreter.Machine, self, msgname, args);
        }

Same methods

DoesNotUnderstandMethod::DoesNotUnderstand ( Machine machine, IObject self, string msgname, object args ) : object