将 Sorbet RBI 添加到 gem 的目录结构是什么?

2023-12-06

我有一个gem我想添加类型(通过提交 PR 或通过分叉仅在我的项目中使用),但是文档除了创建一个/rbi folder.

大声思考,是否应该镜像文件lib/添加了类型签名,或者应该是一个大文件(每个版本?),就像中的签名一样冰糕型?

我还不知道有任何 gem 这样做,并且文档也没有提到它。


我最近为我的一个宝石 - pdf 阅读器经历了这个过程。这是我第一次接触冰糕(所以我不是专家),而且我还注意到缺乏向 gem 添加类型的特定用例的文档。

我最终使用生成了初始 rbi 文件parlour,将它们全部放入一个文件中:https://github.com/yob/pdf-reader/blob/480aa240a531cd6f97a46a29279f19025821e886/rbi/pdf-reader.rbi

冰糕似乎对此很满意,所以我没有改变它。

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

将 Sorbet RBI 添加到 gem 的目录结构是什么? 的相关文章

  • 如何检查一个数字是否包含在一个范围内(在一个语句中)?

    我正在使用 Ruby on Rails 3 0 9 我想检查某个数字是否包含在某个范围内 也就是说 如果我有一个变量number 5我想检查一下1 lt number lt 10并检索一个布尔值 如果number值包含在该范围内 我可以这样
  • 设计不能很好地处理 RoR3 应用程序上的多个子域

    我看到了很多关于这个主题的问题 但其中很多都有相互矛盾的信息 并且由于某种原因它对我不起作用 I have 顶级域名 即 lvh me 开发 每个用户都有子域 即 userdomain lvh me 登录表单位于顶级域 lvh me I w
  • Ruby 试图掌握一种新的表示法。 (inject(:) 与 select(and:even?);为什么有 &?)

    所以 我刚刚了解到 而不是写这样的东西 1 2 3 4 5 inject x y x y gt 15 我可以写 1 2 3 4 5 inject gt 15 我还了解到 而不是写 1 2 3 4 5 select x x even gt 2
  • 如何运行使用 Rails 模型的 Ruby 任务?

    我有一个带有一些基本模型的 Rails 应用程序 该网站显示从其他来源检索到的数据 因此 我需要编写一个 Ruby 脚本来在数据库中创建新实例 我知道我可以使用测试挂钩来做到这一点 但我不确定这在这里是否有意义 我不确定这个任务应该是什么样
  • 输出到控制台,同时保留 ruby​​ 中的用户输入

    我有一个 ruby 脚本 它同时异步接收和显示来自服务器的消息 并允许用户在控制台上输入 当收到消息时 当前正在将其写入用户正在键入的内容的中间 输入本身并没有乱码 但看起来很糟糕 理想情况下 它将保存用户当前的输入 输出消息 然后在下一行
  • 在 Ruby 中创建带有静态页面的博客的最佳方法

    我刚刚访问了静态网站生成 http www ruby toolbox com categories static website generation html on 红宝石工具箱 http www ruby toolbox com 我不知
  • 从 ActiveRecord 获取表名

    I used ActiveRecord Base set table name在动态创建的 ActiveRecord 类上设置我的表名称 现在我需要知道稍后如何获得该值 api 文档没有提及如何执行此操作 另外 我无法从 ActiveRec
  • 如何从 Ruby 检查具有特定 pid 的进程是否正在运行?

    如果有多种方法 请列出 我只知道一个 但我想知道是否有一种更干净的 Ruby 方式 之间的区别Process getpgid and Process kill方法似乎是当 pid 存在但由另一个用户拥有时发生的情况 Process getp
  • 如何使用 watir 滚动网页

    我正在尝试滚动网页以查找并单击页面滚动时延迟加载的内容 我正在使用以下命令 require watir webdriver browser Watir new firefox browser send keys space 我在 Firef
  • 在 Rails 4 中渲染部分/rake 任务/后台作业/模型中的视图

    我读过很多关于在 rake 任务 后台作业 模型中渲染 Rails 部分和视图的内容 我在 Stackoverflow 和网络上找到的绝大多数内容都描述了在 Rails 3 中工作的方法 但它们似乎已经过时了 而且我没有让它们工作 即使花了
  • 在新的 RHEL6 服务器上安装 ruby​​-filemagic gem 时遇到困难

    它似乎正在寻找 libmagic so 1 文件 我有那个文件 它位于 usr lib64 中 我没有以 root 用户身份运行此安装 我也在使用 rvm 和 Bundler 这是我的 bundle 命令的结果 当它到达 Gemfile 中
  • 如何从数组中删除空白元素?

    我有以下数组 cities Kathmandu Pokhara Dharan Butwal 我想从数组中删除空白元素并想要以下结果 cities Kathmandu Pokhara Dharan Butwal 有没有类似的方法compact
  • 如何使用 Ruby 2.7.0 修复 Rails 的警告消息

    有没有人解决这个问题Ruby 2 7 0 I used rbenv并安装了 Ruby v2 7 0 然后使用创建了一个 Rails 项目Rails v6 0 2 1 目前 通过运行之一 rails s rails s u puma rail
  • (在 Ruby 中)允许混合类方法访问类常量

    我有一个为其定义常量的类 然后我定义了一个类方法来访问该类常量 这很好用 一个例子 usr bin env ruby class NonInstantiableClass Const hello world class lt lt self
  • 使用 YAML.load 解析 json 安全吗?

    我使用的是红宝石2 1 0 我有一个 json 文件 例如 测试 json item apple 1 banana 2 使用 YAML load 加载此文件是否安全 YAML load File read test json 我正在尝试加载
  • 如何在 JS Rails 响应中包含 HTML?

    我有一个响应 HTML 和 JS AJAX 查询的 FooController app controllers foo controller rb class FooController lt ApplicationController l
  • Rails 3 - “无法解析 Yaml”

    我不知道我做错了什么 我尝试运行 rails c 但它只是给了我一个错误 10 分钟前它还在工作 C Ruby192 lib ruby 1 9 1 psych rb 148 in parse couldn t parse YAML at l
  • 如何在 gem 的示例脚本中使用 pry-byebug ?

    我正在制作我的第一个 gem 它不是 Rails 应用程序 而是一个带有一些 AI 的 tic tac toe 库 这样我就可以与一个永远不会输的计算机对手比赛 并在可能的情况下强行获胜 现在我正在尝试调试人工智能中的攻击策略 但我似乎无法
  • 为什么 rand() 总是返回相同的数字?

    我在用 兰特 200 在我的 Rails 应用程序中 当我在控制台中运行它时 它总是返回随机数 但如果我在应用程序行中使用它 index rand 200 索引总是相同的号码 为什么会这样以及如何克服这个问题 简单的伪随机数生成器实际上生成
  • 回滚后是否应该删除迁移

    我对 ruby 和 Rails 相当陌生 刚刚开始了解迁移 我的问题是回滚后删除迁移的最佳实践或正确时间是什么 到目前为止 我读到的内容是回滚后是否删除迁移的观点问题 但是在团队中工作时删除迁移是否有任何重大影响 以及保留迁移文件相对于删除

随机推荐

  • java中的位运算符仅适用于整数和长整型?

    我在Eclipse中编写了以下代码 byte b 10 some other operations b b Eclipse 希望在按位补码行中将其强制转换为字节 它说 类型不匹配 无法从 int 转换为 byte 我还尝试了其他按位运算和其
  • SIGSEGV 由“kill”生成时是否特殊?

    我知道SIGSEGV当内核使用它来报告内存访问冲突时 不能忽略它 但是如果我安装一个信号处理程序SIGSEGV什么都不做 然后另一个进程使用kill向我发送该信号 其行为是否与我使用 正常 信号相同 例如SIGUSR1 反而 Grijesh
  • “.save”仅在数据库中插入空值

    我正在尝试为一家医院制作 RoR 申请 以便它有患者 医生 办公室等 我遇到的问题是 在患者 注册 时 我无法将新患者保存在数据库中 事实上 尽管我已经检查过属性没问题 只是一个名字和一个个人ID 但一旦执行该方法 数据库中只出现一个带有
  • SAS中有没有一种有效的方法来转置大表

    我有一个 SAS 数据集需要转置 它具有以下形式 id 日期类型 值 我需要把它转换成 id 日期 valueoftype1 valueoftype2 有什么有效的方法可以实现这一点吗 我的数据非常庞大 例如 data one input
  • JQuery设置的文本值回发后丢失

  • Bootstrap Modal 按钮不起作用,仅在 iOS 上

    我的网站上有这个 Bootstrap Modal 它适用于除 Apple iOS 之外的所有内容 有没有人遇到过这个 有任何想法从哪里开始来解决这个问题 我已经尝试使用模拟器进行故障排除 似乎工作正常 只是 Iphone 似乎无法工作 这是
  • 粘贴 (Python) Web 服务器 - 自动重新加载问题

    当我以守护进程模式启动 粘贴 Web 服务器时 它似乎会在源文件的时间戳更新时停止重新加载的能力 这是我启动守护进程的方法 cd project bin paster serve reload daemon development ini
  • COM Interop 和 Outlook - 让 Outlook 可见?

    我正在通过 VB NET 程序自动化 Outlook 根据用户的请求将项目传输到日历和联系人中 一切正常 这不是问题 问题是 当 Outlook 尚未打开时 像这样自动执行 Outlook 会创建一个隐藏实例 我也许可以理解这有什么用处 可
  • MySQL 中前 5 个值的总和

    我有一个 MySQL 表 用于存储赛车锦标赛的结果 因此每一行都包含每个车手在某场比赛中的位置以及其他数据 我想要获得某个车手的前 5 名排名的总和 例如 如果车手的最佳位置是 1 2 2 4 5 我希望 MySQL 返回 14 我想做的是
  • 如何将数据发布到多页谷歌表单?

    我正在尝试通过 POST 自动填写 Google 表单 然而 当我实际将数据发布到其中时 只有第一页的问题实际上被填写了 示例代码 private static void PostToFormTest WebClient client ne
  • 如何在 C# Windows 应用程序中通过计时器控件刷新 Gridview?

    我有一个组合框 在组合框中有多个选项 如 5 秒 10 秒 20 秒等 当我选择任何一个选项时 网格视图会在该特定时间后刷新 以下是在 datagridview 中加载文件的代码 public string Path get set pri
  • 维护滚动位置和回发时的选定控制

    返回另一个基于网络的问题 当控件向服务器发出回发时 页面会刷新 很好 页面也会滚动回顶部并失去所选的控件 如果回发后相关 则根据发生的更改 控件将变得可见或隐藏 即使页面可见性没有任何变化 焦点也会丢失并且当前滚动会重置 在文本字段中输入的
  • 如何立即在网格视图中显示图像的选择

    我有一个问题 我有一个自定义网格视图 其中两个图像 一个是背景图像 第二个是复选标记图像 当我单击网格视图复选标记的一项时 会显示哪个项目显示图像选择 但是当我们想要选择网格视图的第二项 它还会在同一图像上显示复选标记 如下面所附图像所示
  • 在docker容器中安装cygwin时出错:系统找不到指定的路径。 (0x3) error=hcssshim::ImportLayer - 失败 在 Win32 中失败

    我有一个简单的 Dockerfile FROM mcr microsoft com windows 1809 Install chocolatey RUN powershell exe Set ExecutionPolicy Bypass
  • 创建几个相互不兼容的数字类型[重复]

    这个问题在这里已经有答案了 我想创建封装原始数字类型的轻量级类型 struct A long value struct B long value struct C long value 这样我就可以将常用的算术运算应用于每种类型 并获得预期
  • jQGrid - 更改分组标题的背景颜色

    我正在使用 jQGrid 进行分组 每个组标题将具有以下三种可能性之一 Pending Duplicate Not Duplicate 根据该文本 我想更改分组标题的背景颜色 我已经在使用了rowattrjQGrid 的属性来更改网格行的背
  • 使用 NLTK 检查英语语法 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我开始使用NLTK库 我想
  • SpringBeanFacesELResolver 的 javax.faces.el.VariableResolver 类转换异常

    我正在尝试升级到 JSF2 和 Spring 3 0 5 当我部署到 Tomcat 时出现以下错误 任何帮助表示赞赏 SEVERE Exception sending context initialized event to listene
  • 如何使用 PHP 动态发布 ical 文件以供 Google 日历读取?

    任何关于 PHP ical 的 Google 搜索都会带来 phpicalendar 以及如何解析或读取 IN ical 文件 我只想编写一个 PHP 文件 从数据库中提取事件并以 ical 格式写出它们 我的问题是我找不到任何地方可以回答
  • 将 Sorbet RBI 添加到 gem 的目录结构是什么?

    我有一个gem我想添加类型 通过提交 PR 或通过分叉仅在我的项目中使用 但是文档除了创建一个 rbi folder 大声思考 是否应该镜像文件lib 添加了类型签名 或者应该是一个大文件 每个版本 就像中的签名一样冰糕型 我还不知道有任何