哪些 Ruby 类支持 .clone?

2023-11-28

Ruby 定义#clone in Object。 令我惊讶的是,有些类在调用它时会引发异常。 我发现NilClass, 真实课堂, 假类, Fixnum有这种行为。

1)是否存在完整的类列表(至少是核心类),这不允许#clone? 或者有没有办法检测特定类是否支持#clone ?

2)出了什么问题42.clone ?


我认为没有正式的列表,至少除非您阅读源代码。 2) 不起作用的原因是因为对 Fixnums 进行了优化。它们作为实际值(true、false 和 nil 也是如此)在内部存储/传递,而不是作为指针。天真的解决方案就是42.clone返回相同的42,但随后不变式obj.clone.object_id != obj.object_id将不再持有,42.clone实际上不会是克隆。

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

哪些 Ruby 类支持 .clone? 的相关文章

  • Ruby,通过 SSH 和 LOG 逐一运行 linux 命令

    我想用 Ruby 女巫 net ssh 编写代码 在远程 Linux 机器上一一运行命令并记录所有内容 在 Linux 机器上称为命令 stdout 和 stderr 所以我写函数 def rs ssh cmds cmds each do
  • Ruby 中 SecureRandom.urlsafe_base64(8) 的碰撞概率?

    我在用SecureRandom urlsafe base64 8 为了在我的系统中创建 URL 安全的唯一 ID 我想知道如何计算碰撞概率 我将大约 10 000 个这些 id 插入到一个数组中 我想避免检查其中一个键是否已经在数组中 但我
  • 在 Windows 上安装 RMagick

    我对此进行了研究 并且在我的一台计算机上花了几个小时 大约三周前 我在我的台式计算机上安装了 RMagick 它相当复杂 我不记得我采取的具体步骤 我真的很沮丧 我已将 ImageMagick 安装到我的计算机上的目录 C ImageMag
  • 解析包含 json 字符串的 json

    我有一个 json 里面有另一个 json 但它在双引号内 因此它给了我一个解析错误 除了使用之外还有什么方法可以解析这个jsongsub替换双引号 obj Name FirstName Douglas LastName Crockford
  • Accepts_nested_attributes_for Rails 3 中的实际形式使用

    使用 Ruby on Rails 3 我半明白accepts nested attributes for是如何的supposed工作 但我无法找出以某种形式实现这一点的实用方法 例如 如果有人想在其用户页面中添加他们最近的位置 user r
  • 使用 Ruby 替换文件中的特定行

    我有一个如下所示的文本文件 a txt open close open open close open 我需要找到一种方法将第三行替换为 close 我做了一些搜索 大多数方法都涉及搜索该行而不是替换它 在这里不能真正做到这一点 因为我不想
  • 从轨道控制器返回

    这是一个初学者 Rails 问题 我这样做之后 format xml head ok 如何从控制器端点返回而不显示视图 如果我此时放弃函数的末尾 我会得到我所期望的结果 但如果我调用 返回 我最终会进入视图 或者在我的情况下会出现缺少的视图
  • Rails 2.3.14:如何序列化 ActionController::Request 对象?

    我需要编写一些根据 Rails 2 3 14 控制器收到的请求对象类型执行操作的方法 但是 我不想启动整个应用程序 甚至不想启动控制器 我只想拥有这样一个对象的编组副本 以便我可以在 Rails 环境之外使用 不幸的是 ActionCont
  • Ruby `split':UTF-8 中的无效字节序列(ArgumentError)

    我正在尝试填充电影对象 但是在解析时u item文件我收到此错误 split UTF 8 中的无效字节序列 ArgumentError File open Data u item r do infile while line infile
  • 使用 Ruby 通过 Outlook 发送消息的最简单方法是什么?

    我的工作要求我为某些测试自动生成电子邮件 我一直在四处寻找 但一直未能找到可以快速实施的合理解决方案 它需要在 Outlook 中 而不是其他邮件服务器中 因为我们有一些奇怪的身份验证规则 并且我们需要保存草稿的选项 而不仅仅是发送消息 显
  • 模块何时包含在在 Rails 中运行的 Ruby 类中?

    我正在尝试编写一个方法来告诉我包含特定模块的每个类 它看起来像这样 def Rating rateable objects rateable objects ObjectSpace each object Class do c next u
  • 使用brew时出现“错误的解释器”错误

    当我尝试运行任何 brew 命令时 出现此错误 Holger Sindbaeks MacBook Air holgersindbaek brew help bash usr local bin brew usr bin ruby bad i
  • Ruby 中的 Splat 运算符(快速排序示例)

    你好 我正在研究一些 Ruby 代码 在 Ruby 中实现快速排序 1 def qsort lst 2 return if lst empty 3 x xs lst 4 less more xs partition y y lt x 5 q
  • 载波无法删除图像

    我现在使用 Carrierwave 上传图像 一切都很好 除了一个 当我添加用于删除上传图像的复选框时 我收到错误 无法批量分配受保护的属性 remove image Form Model class Manufacturer lt Act
  • 什么时候需要将参数传递给“Thread.new”?

    在线程外部定义的局部变量似乎从内部可见 因此以下两种用法Thread new似乎是一样的 a foo Thread new puts a gt foo Thread new a a puts a gt foo The document ht
  • 为什么 Ruby 使用 respond_to?而不是respond_to?

    我很好奇为什么 Ruby 用于检查对象是否响应方法的内省相关方法是respond to 代替responds to 我总是觉得很尴尬 但也许那是因为我已经习惯了respondsToSelector在 Objective c 中 Matz p
  • 未签出...捆绑安装无法修复帮助!

    https github com intridea omniauth git at master is not checked out Please run bundle install Bundler GitError 那我该怎么办 捆绑
  • 如何从 method_missing 获取绑定?

    我试图找到一种方法来从 Ruby 1 8 中的 method missing 中的调用者获取绑定 但我似乎找不到方法来做到这一点 希望下面的代码能解释我想做的事情 class A def some method x 123 nonexist
  • 在 Rails 中强制内联渲染 PDF 文档

    我正在编写一个从一组 XML 文件生成 PDF 文件的服务 正在正确生成 PDF 但是 每次我单击 查看 PDF 链接时 浏览器都会要求用户下载 PDF 文件 我需要 PDF 内联显示 就像任何常规 HTML 页面一样 我虽然我写的代码是正
  • 使用 google-drive-ruby gem 在 google 云端硬盘中创建文件夹

    我知道这里提出了类似的问题 但是我仍然无法完成这项工作 因为我的情况有点不同 我希望能够使用以下命令在谷歌驱动器中创建一个文件夹谷歌驱动器红宝石宝石 https github com gimite google drive ruby 根据谷

随机推荐

  • 使用 JSON.net 将枚举容器序列化为字符串

    您可以通过添加属性将 WebAPI 模型中的枚举字段序列化为字符串 enum Size Small Medium Large class Example1 Newtonsoft Json JsonConverter typeof Newto
  • 使用 std::hexfloat 读写

    这段代码打印出来0在我的机器上 但我期望0 3 怎么了 我在最新的 Arch Linux 上使用 g 6 3 1 编译标志似乎无关紧要 include
  • 行号()结束

    我遇到了一个有点特殊的语法 你能帮忙弄清楚它的意思吗 谢谢 SELECT ROW NUMBER OVER ORDER BY Product ProductID FROM Product 另外 这失败了 我特别感兴趣的是ROW NUMBER
  • 如何在 Android 环境中检测数据使用情况

    我希望能够使用 Android 环境检测所有形式的数据使用情况 是否可以密切关注哪些应用程序正在调用RTP vs WAP等等 这样我就可以随时知道本机程序或第三方应用程序何时使用数据 如果您正在谈论一个 Android API 来通过应用程
  • 我无法使用 Python 在 Gmail 中搜索已发送的电子邮件

    我正在尝试在 已发送 中搜索消息 实际上我关心两者 但我只收到传入消息 暂时我有 imap conn select str after after strftime d b Y typ msg ids imap conn search UT
  • 在 R 中可视化 2 变量联合概率质量函数

    我在 R 中有一个表示关节的矩阵概率质量函数两个变量的 pmf 例如 gt matrix c 13 00004 0 0 0 04 13 008 0 0 01 007 16 02 0004 004 025 070 14 01 001 007
  • jQuery:无法识别的表达式

    document ready function var page window location hash if page a href page addclass selected pageload page replace page p
  • 合并两个数据框并删除重复的列

    我想要cbind两个数据框并删除重复的列 例如 df1 lt data frame var1 c a b c var2 c 1 2 3 df2 lt data frame var1 c a b c var3 c 2 4 6 cbind df
  • React - TypeScript 的 props 解构

    我有一个功能 export function getSubjectsForStudent data any any 我从外部源收到 数据参数 定义强类型是不可行的 return 源自 data 因此它的类型也是any 主 组件将 返回 传递
  • Maven 中的“反应堆”是什么?

    我一直在阅读有关 Maven Reactor 的内容 并对它的术语用法感到困惑 我读过 多模块是一个反应器 您可以操作 Maven 反应器 并且反应器是一个插件 反应堆到底是什么 反应器是 Maven 的一部分 允许它在一组模块上执行目标
  • iOS 8 自动单元格高度 - didSelectRowAtIndexPath 导致 UItableview 跳转到顶部

    我目前正在将应用程序更新到 iOS8 并替换我自己的像元高度计算 我有一个带有一堆自定义单元格的表格视图 每个单元格被选中时都会在导航控制器上呈现 推送一个新视图 当表格视图中填充了这些单元格 并且用户选择表格底部附近的一个单元格时 表格视
  • 是否可以使用 openURL 打开设置应用程序?

    我知道一个应用程序可以使用以下代码启动其他应用程序 UIApplication sharedApplication openURL appUrl 我知道打开 safari 和邮件的 URL 方案 但我做了一些搜索 但没有找到有关 setti
  • Shell 命令在 python 中失败,在 shell 中正常

    我有一个 python 脚本 可以根据给定的输入生成许多 shell 命令 问题是 当它尝试执行生成的命令时 它会失败 但是当我自己运行生成的命令 即从命令行 时 它们会成功执行 这是生成的命令 find home me downloade
  • Android SMS 拦截,无需通知图标或 WAP-PUSH 消息

    有没有办法拦截短信广播接收器例如here但不会向用户显示任何通知并立即删除包含例如某些关键字的消息 EDIT 我需要的是在android手机之间进行一对一的通信 我认为发送短信可以解决问题 但是不需要短信通知 也许WAP推送消息会更好 但我
  • 同步语句上出现 NullPointerException

    我尝试在下面的代码中同步一个对象 public void myMethod synchronized globalObj Do something here 该代码在一个线程中执行 问题是 另一个线程可能将 globalObj 设置为 nu
  • cmake 不会编译为 C++ 11 标准

    我是 C 新手 一直在编译 制作 链接 构建 其他方面苦苦挣扎 让我们看看是否有人可以帮助我 我做了一些搜索 发现其他人也有类似的问题 但我尝试了他们的解决方案 但没有成功 所以这里是 一个简单的 C 程序 使用 C 11 功能 例如统一初
  • Nhibernate 在使用 QueryOver 时无法解决属性异常,适用于 QueryAll

    我有以下问题基本上我有以下两个片段 var contactAssociation session QueryOver
  • 具有 ManyToOne 关联的实体上的 getArrayResult

    具有以下基本表 一对多关系 客户端 拥有许多用户 用户 每个用户属于单个客户端 在一个非常简单的示例中 如果我查询用户实体 Querybuilder 和getArrayResult 我看到以下内容 实际生成的SQL中包含要修改的外键字段 返
  • 有没有办法用javascript与IP建立tcp连接?

    让我介绍一下我想要完成的任务的背景 我有一个具有本地 IP 地址的设备 芯片和引脚终端 它已被编程为接收某些数据并处理它 示例 我发送字符串 05 in hex 30 35 终端会读取该内容并将重新启动 我尝试过使用SockJS客户端以及内
  • 哪些 Ruby 类支持 .clone?

    Ruby 定义 clone in Object 令我惊讶的是 有些类在调用它时会引发异常 我发现NilClass 真实课堂 假类 Fixnum有这种行为 1 是否存在完整的类列表 至少是核心类 这不允许 clone 或者有没有办法检测特定类