模块: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 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
69 70 71 |
# File 'lib/ Mongo/utils.rb', 第 69 行 module_function def camelize(sym) sym.to_s.gsub(/_(\w)/) { ::regexp.last_match(1).upcase } end |
。 excerpt_backtrace (exc, **opts) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
47 48 49 50 51 52 53 54 55 56 |
# File 'lib/ Mongo/utils.rb', 第 47 行 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 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
如果需要测量时间,则应使用此函数。
94 95 96 |
# File 'lib/ Mongo/utils.rb', 第 94 行 module_function def monotic_time 处理.clock_gettime(处理::CLOCK_MONOTONIC) end |
。 shallow_camelize_keys (hash) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
将提供的哈希中的键字符串化,并将下划线样式的键转换为驼峰式大小写样式的键。
65 66 67 |
# File 'lib/ Mongo/utils.rb', 第 65 行 module_function def shallow_camelize_keys(哈希) 哈希[哈希.map { |k, v| [ camelize(k), v ] }] end |
。 shallow_symbolize_keys (hash) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
表示所提供哈希中的键。
59 60 61 |
# File 'lib/ Mongo/utils.rb', 第 59 行 module_function def shallow_symbolize_keys(哈希) 哈希[哈希.map { |k, v| [ k.to_sym, v ] }] end |
。 transform_server_api (server_api) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
注意:
server_api 必须具有符号键或者是 BSON::Document。
74 75 76 77 78 79 80 81 82 |
# File 'lib/ Mongo/utils.rb', 第 74 行 module_function def transform_server_api(server_api) {}.点击 do |doc| if 版本 = server_api[:version] doc['apiVersion'] = 版本 end doc[' apiStrict '] = server_api[:strict] 除非 server_api[:strict].nil? doc['apiDeprecationErrors'] = server_api[:deprecation_errors] 除非 server_api[:deprecation_errors].nil? end end |
。 warn_bg_Exception (msg, exc, **opts) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
37 38 39 40 41 |
# File 'lib/ Mongo/utils.rb', 第 37 行 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 |