Exemplo n.º 1
0
        protected override bool Build(MetaObjectBuilder /*!*/ metaBuilder, CallArguments /*!*/ args, bool defaultFallback)
        {
            // TODO: this is our meta object, should we add IRubyMetaConvertible interface instead of using interop-binder?
            if (args.Target is IDynamicMetaObjectProvider)
            {
                metaBuilder.SetMetaResult(args.MetaTarget.BindConvert(args.RubyContext.MetaBinderFactory.InteropConvert(_type, true)), false);
                return(true);
            }

            return(BuildConversion(metaBuilder, args.MetaTarget, args.MetaContext.Expression, _type, defaultFallback));
        }