如何在Ruby中实现注入?

2023-12-28

我需要能够使用这个调用:

h = x.inject({}) {|a, b| a[b.one] = b.two; a}

其中 x 是 Couple 对象的序列(这些对象仅包含两个数字字段,一和二)。

我不知道如何在 Couple 中实现注入方法。


定义一个#each中的方法Couple,然后包括Enumerable in it.

class Couple
  def each
    yield "a"
    yield "b"
  end

  include Enumerable
end

couple = Couple.new
couple.inject("") { |str, obj| str + obj }
# => "ab"

http://www.ruby-doc.org/core-1.9.3/Enumerable.html http://www.ruby-doc.org/core-1.9.3/Enumerable.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Ruby中实现注入? 的相关文章

随机推荐

  • 在 Swift 中用数组序列化我自己的对象有什么更优雅的方法

    我有一个看起来像这样的课程 class Foo var bar Int class Bar var baz String var arr Foo 我有一个 Bar 结构的对象 我需要将其序列化为 JSON let instance Bar
  • 将主题更改为“NoActionBar”后应用程序崩溃

    您好 我必须将我的应用程序主题更改为 Theme AppCompat Light NoActionBar 但我更改后 应用程序崩溃了 我找不到问题出在哪里 我的目标是在工具栏上扩展我的导航抽屉 但为此 我需要 NoActionBar 函数
  • 函数 NSE 内的 group_by dplyr

    我使用时遇到问题dplyr and group by在管道函数调用中 可重现的示例 使用以下数据 ex data lt structure list word1 c no not not no not not not not no not
  • 使用自定义 ExecutionContext 执行 Future.sequence

    我正在尝试创建一个Future List Int from a List Future Int 使用指定的ExecutionContext 但是 我收到有关类型为 cbf 的第二个隐式参数的错误CanBuildFrom 我不完全理解其目的C
  • TypeScript 错误 Web 必备

    我使用 Web Essentials 在保存时编译我的打字稿文件 Visual Studio 2012 但我得到一个空的 js 和以下消息 Compile Error See error list for details error TS5
  • 禁用点击事件处理程序一段时间

    我已经看过类似的问题 但提供的答案涉及按钮而不是 div 元素 当我单击带有 id 的 div 元素时click 单击事件处理程序被禁用unbind 并设置一个 2 秒的计时器 2 秒后 应再次启用单击事件处理程序bind 问题是单击事件处
  • 如何在 python 中查找常规 3D 网格上的相邻线

    我有一堆点的坐标 想在 python 包中用它们创建曲面 我想在将数据导入包之前对其进行整理 点来自规则网格 首先 我根据点的位置创建线 在此步骤中 我仅定义哪些点号创建我的线 我的输入数据是 coord np array 0 0 2 0
  • 将旧的 makefile 转换为 CMake

    我正在尝试将旧的 makefile 代码转换为 CMake 你能帮助我吗 这是我目前陷入困境的部分 我不知道如何将这些参数传递给编译器 COMPILE FLAGS c m32 O3 fPIC w DSOMETHING Wall I src
  • Addthis 不适用于 Ajax

    我正在使用 Ajax 加载所有文章 但 Addthis 功能不正确 thisChild load permLink thePostStuff function 在所述 load 函数的回调中 我添加了以下代码以引入 Addthis 共享功能
  • Scala 中具有抽象类型的 F 界多态性

    我读过几篇文章 表达了应该使用抽象类型来实现 Scala 中的 f 有界多态性 这主要是为了缓解类型推断问题 同时也是为了消除定义递归类型时类型参数似乎引入的二次增长 这些定义如下 trait EventSourced E self gt
  • Android自定义评分栏图片大小问题

    我正在构建一个自定义评级栏 在 kozyr 的文章的帮助下 我创建了它 但我对不同屏幕类型的不同图像缩放尺寸有疑问 下面我提供了图像 左侧是我的自定义评级栏的屏幕截图 右侧是简单的图像视图 这是针对 HVGA 屏幕的 链接到屏幕截图 htt
  • 从 minikube 集群内部连接到本地数据库

    我正在尝试从 minikube pod 内部访问托管在 localhost 上的 docker 容器内的 MySQL 数据库 但收效甚微 我尝试了所描述的解决方案Minikube 将在本地主机上运行的 MySQL 作为服务公开 https
  • 之间的区别:SAX Parser、XPath、DOM、XMLPullParser

    我想知道上述四种类型 SAXPaser XPath DOM XMLPullParse 之间的区别以及我们何时应该使用每种类型 SAX 解析是比 DOM 最好实现的一种解析 请参见以下两者之间的区别 DOM 节点采用树结构的形式 内存 它占用
  • 如何在 标记中使用缩进?

    我有一个带有一些计算机代码的代码标签 code int main br gt printf Hello World br gt code 但是当我在浏览器中显示它时 不会出现缩进 除了 使用 nbsp 编写它们将是一项非常乏味的工作 pre
  • 如何使用ajax将javascript值获取到php变量而不重新加载页面

    在这里我想从中获取一个值JavaScript to PHP变量而不使用任何 POST 或 GET 方法 我在这里给出 HTML 代码
  • Log4j2如何使用多个配置文件?

    我正在编写测试 Java 库的 Java 代码 该库包含其自己的 Log4j2 配置作为发行版的一部分 我想在我的测试代码中使用 Log4j2 而不修改库的配置 有没有办法为我的测试代码提供单独的 Log4j2 配置 这一切都作为命令行 J
  • 具有多个孔的 GeoJSON MultiPolygon

    下面我有我所期望的一种创建方法GeoJSON MultiPolygon object http geojson org geojson spec html id7其中有一个多边形 其中有两个 孔 当我使用该服务时http geojson i
  • 将 std::stack 复制到 std::vector

    标准是否保证以下代码可以工作 假设 st 不为空 include
  • 如何以编程方式检索所有查询的查询文本

    我想以编程方式检索存储在访问数据库中的每个查询的查询文本 我正在考虑使用 OleDbConnection GetSchema 或 OleDbConnection GetOleDbSchemaTable 甚至 ADOX 来获取所需的信息 我精
  • 如何在Ruby中实现注入?

    我需要能够使用这个调用 h x inject a b a b one b two a 其中 x 是 Couple 对象的序列 这些对象仅包含两个数字字段 一和二 我不知道如何在 Couple 中实现注入方法 定义一个 each中的方法Cou