Example #1
0
        public bool ParametersMatchArguments(object[] args)
        {
            int i = 0;

            foreach (ParameterDef param in Parameters)
            {
                if (i >= RequiredArgsCount)
                {
                    return(true);
                }

                if (param.HasEqlSpecializer)
                {
                    bool result = Runtime.Eql(args[i], param.EqlSpecializer);
                    if (!result)
                    {
                        return(false);
                    }
                }
                else if (param.HasTypeSpecializer)
                {
                    bool result = Runtime.ToBool(Runtime.IsInstanceOf(args[i], param.TypeSpecializer));
                    if (!result)
                    {
                        return(false);
                    }
                }

                ++i;
            }

            return(true);
        }