class Bundler::Plugin::API
公共类方法
command(command, cls = self) 点击切换源代码
插件应通过此助手声明它们处理一个命令。
@param [String] 由它们处理的命令 @param [Class] (可选) 处理该命令的类。如果未
provided, the `self` class will be used.
# File bundler/plugin/api.rb, line 33 def self.command(command, cls = self) Plugin.add_command command, cls end
hook(event, &block) 点击切换源代码
# File bundler/plugin/api.rb, line 48 def self.hook(event, &block) Plugin.add_hook(event, &block) end
source(source, cls = self) 点击切换源代码
插件应通过此助手声明它们提供安装源。
@param [String] 它们提供的源类型 @param [Class] (可选) 处理该源的类。如果未
provided, the `self` class will be used.
# File bundler/plugin/api.rb, line 43 def self.source(source, cls = self) cls.send :include, Bundler::Plugin::API::Source Plugin.add_source source, cls end
公共实例方法
cache_dir() 点击切换源代码
插件用于存储的缓存目录
@return [Pathname] 缓存目录的路径
# File bundler/plugin/api.rb, line 55 def cache_dir Plugin.cache.join("plugins") end
method_missing(name, *args, &blk) 点击切换源代码
调用父类方法
# File bundler/plugin/api.rb, line 67 def method_missing(name, *args, &blk) return Bundler.send(name, *args, &blk) if Bundler.respond_to?(name) return SharedHelpers.send(name, *args, &blk) if SharedHelpers.respond_to?(name) super end
respond_to_missing?(name, include_private = false) 点击切换源代码
调用父类方法
# File bundler/plugin/api.rb, line 75 def respond_to_missing?(name, include_private = false) SharedHelpers.respond_to?(name, include_private) || Bundler.respond_to?(name, include_private) || super end
tmp(*names) 点击切换源代码
插件使用的临时目录。接受连接为后缀的名称
@return [Pathname] 新创建的目录的对象
# File bundler/plugin/api.rb, line 63 def tmp(*names) Bundler.tmp(["plugin", *names].join("-")) end