public IntegerValue ConvertToInteger(object value)
        {
            var site = RubyUtils.GetCallSite(ref _integerConversion, CompositeConversionAction.Make(Context, CompositeConversion.ToIntToI));

            return(site.Target(site, value));
        }
        public double CastToDouble(object value)
        {
            var site = RubyUtils.GetCallSite(ref _tofConversion, ConvertToFAction.Make(Context));

            return(site.Target(site, value));
        }
        public MutableString /*!*/ ConvertToString(object value)
        {
            var site = RubyUtils.GetCallSite(ref _tosConversion, ConvertToSAction.Make(Context));

            return(site.Target(site, value));
        }
        public int CastToFixnum(object value)
        {
            var site = RubyUtils.GetCallSite(ref _fixnumCast, ConvertToFixnumAction.Make(Context));

            return(site.Target(site, value));
        }