模块:Mongo::Options::Mapper
Overview
用于各种选项映射行为的实用程序类。
实例方法摘要折叠
-
#transform (options, mappings) ⇒ 哈希
在给定映射的情况下,将提供的选项转换为一设立新选项。
-
#transform_documents (options, mappings, 文档 = BSON::Document.new) ⇒ BSON::Document
在给定映射的情况下,将提供的选项转换为一设立新选项。
-
#transform_keys_to_strings (options) ⇒ 哈希
将选项的所有键转换为字符串。
-
#transform_keys_to_symbols (options) ⇒ 哈希
将选项的所有键转换为符号。
-
#transform_values_to_strings (options) ⇒ 哈希
将所有符号值转换为字符串。
实例方法详细信息
#transform (options, mappings) ⇒哈希
在给定映射的情况下,将提供的选项转换为一设立新选项。
不存在于所提供映射中的选项将按原样返回。
42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/options/mapper.rb', 第42行 def 转换(Transform)(, mappings) map = transform_keys_to_strings(mappings) opts = transform_keys_to_strings() opts.化简(reduce)({}) do |已转换, (key, 值)| if map[key] 已转换[map[key]] = 值 else 已转换[key] = 值 end 已转换 end end |
#transform_documents (options, mappings, 文档 = BSON::Document.new) ⇒ BSON::Document
在给定映射的情况下,将提供的选项转换为一设立新选项。 输入和输出均应为BSON::Documents,因此无需进行显式string转换。
69 70 71 72 73 74 75 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/options/mapper.rb', 第69行 def transform_documents(, mappings, 文档 = BSON::文档.new) .化简(reduce)(文档) do |已转换, (key, 值)| 名称 = mappings[key] 已转换[名称] = 值 if 名称 && !值.nil? 已转换 end end |
#transform_keys_to_strings (options) ⇒哈希
将选项的所有键转换为字符串。
87 88 89 90 91 92 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/options/mapper.rb', 第87行 def transform_keys_to_strings() .化简(reduce)({}) do |已转换, (key, 值)| 已转换[key.to_s] = 值 已转换 end end |
#transform_keys_to_symbols (options) ⇒哈希
将选项的所有键转换为符号。
104 105 106 107 108 109 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/options/mapper.rb', 第104行 def transform_keys_to_symbols() .化简(reduce)({}) do |已转换, (key, 值)| 已转换[key.to_sym] = 值 已转换 end end |
#transform_values_to_strings (options) ⇒哈希
将所有符号值转换为字符串。
121 122 123 124 125 126 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/options/mapper.rb', 第121行 def transform_values_to_strings() .化简(reduce)({}) do |已转换, (key, 值)| 已转换[key] = 值.is_a?(符号) ? 值.to_s : 值 已转换 end end |