ruby – Redis gem中的“Invisible”实例方法
发布时间:2020-12-17 02:15:09 所属栏目:百科 来源:网络整理
导读:Redis类上有一些实例方法.它们在源代码中定义,它们可以工作.但他们没有出现在Redis#方法输出中! require 'redis'redis = Redis.new # = #Redis client v3.0.2 for redis://127.0.0.1:6379/0redis.info['redis_version'] # = "2.6.4"k = 'foo'redis.setbit k
Redis类上有一些实例方法.它们在源代码中定义,它们可以工作.但他们没有出现在Redis#方法输出中!
require 'redis' redis = Redis.new # => #<Redis client v3.0.2 for redis://127.0.0.1:6379/0> redis.info['redis_version'] # => "2.6.4" k = 'foo' redis.setbit k,1,1 redis.setbit k,3,11,1 redis.bitcount k # => 3 redis.methods.grep(/bit/) # => [:setbit,:getbit] # no bitcount in the methods! 方法定义:getbit,setbit,bitcount,bitop. 据我所知,bitcount / bitop应出现在方法中.但他们没有.有什么想法吗? 我需要将它们列在方法中,以便另一个gem工作(它定义了redis命令的代理方法,它从Redis#方法获得). 解决方法
发布的gem版本没有明确定义这些方法,您可以通过检查已安装的源或redis.method来确认:bitcount
https://github.com/redis/redis-rb/blob/v3.0.2/lib/redis.rb 它们工作是因为缺少方法只是盲目地将它们传递给redis服务器. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |