模块:Mongo::Utils Private
- 定义于:
- lib/mongo/utils.rb
该模块是私有 API 的一部分。 您应尽可能避免使用此模块,因为它将来可能会被删除或更改。
在命名空间下定义
类: LocalLogger
类方法摘要折叠
- 。 camelize (sym) ⇒ 对象 private
- 。 excerpt_backtrace (exc, **opts) ⇒ 对象 private
-
.monotonic_time ⇒ Float
private
如果需要测量时间,则应使用此函数。
-
。 shallow_camelize_keys (hash) ⇒ 对象
private
将提供的哈希中的键字符串化,并将下划线样式的键转换为驼峰式大小写样式的键。
-
。 shallow_symbolize_keys (hash) ⇒ 对象
private
表示所提供哈希中的键。
- 。 transform_server_api (server_api) ⇒ 对象 private
- 。 warn_bg_Exception (msg, exc, **opts) ⇒ 对象 private
类方法详细信息
。 camelize (sym) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
72 73 74 |
# File 'lib/ Mongo/utils.rb', 第 72 行 module_function def camelize(sym) sym.to_s.gsub(/_(\w)/) { $1.upcase } end |
。 excerpt_backtrace (exc, **opts) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
50 51 52 53 54 55 56 57 58 59 |
# File 'lib/ Mongo/utils.rb', 第 50 行 module_function def excerpt_backtrace(排除, **opts) 案例 lines = opts[:bg_error_backtrace] when 整型 " :\n #{ exc . backtrace [0 ..lines ] . join ( " \ n " ) } " when false, nil nil else " :\n #{ exc . backtrace . join ( " \n " ) } " end end |
.monotonic_time ⇒ Float
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
如果需要测量时间,则应使用此函数。
101 102 103 |
# File 'lib/ Mongo/utils.rb', 第 101 行 module_function def monotic_time 处理.clock_gettime(处理::CLOCK_MONOTONIC) end |
。 shallow_camelize_keys (hash) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
将提供的哈希中的键字符串化,并将下划线样式的键转换为驼峰式大小写样式的键。
68 69 70 |
# File 'lib/ Mongo/utils.rb', 第 68 行 module_function def shallow_camelize_keys(哈希) 哈希[哈希.map { |k, v| [camelize(k), v] }] end |
。 shallow_symbolize_keys (hash) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
表示所提供哈希中的键。
62 63 64 |
# File 'lib/ Mongo/utils.rb', 第 62 行 module_function def shallow_symbolize_keys(哈希) 哈希[哈希.map { |k, v| [k.to_sym, v] }] end |
。 transform_server_api (server_api) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
注意:
server_api 必须具有符号键或者是 BSON::Document。
77 78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/ Mongo/utils.rb', 第 77 行 module_function def transform_server_api(server_api) {}.点击 do |doc| if 版本 = server_api[:version] doc['apiVersion'] = 版本 end 除非 server_api[:strict].nil? doc[' apiStrict '] = server_api[:strict] end 除非 server_api[:deprecation_errors].nil? doc['apiDeprecationErrors'] = server_api[:deprecation_errors] end end end |
。 warn_bg_Exception (msg, exc, **opts) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
40 41 42 43 44 |
# File 'lib/ Mongo/utils.rb', 第 40 行 module_function def warn_bg_Exception(msg, 排除, **opts) bt_excerpt = excerpt_backtrace(排除, **opts) 记录器 = LocalLogger.new(**opts) 记录器.log_warn("#{msg}: #{exc.class}: #{exc}#{bt_excerpt}") end |