使用 OCaml 警告属性禁用警告 8:不详尽的匹配

2024-04-16

我正在尝试编写类似于以下内容的代码:

let [a; b] =
  (* body *) 
  [1; 2]

我想仅针对该模式禁用警告#8[a; b]而不是为了身体或让之外的任何东西。我尝试设置警告属性来禁用警告,但以下方法都不起作用:

let[@warning "-8"] [a[@warning "-8"];b[@warning "-8"]] [@warning "-8"] =
  [1;2][@warning "-8"]
[@@ocaml.warning "-8"]

附:我并不是真的在编写这段代码,而是正在尝试使用自定义 PPX 预处理器。因此,一个复杂但有效的示例是可以接受的。


本地禁用警告[@warning "…"] and [@@warning "…"]4.06.0 之前的 OCaml 版本没有得到很好的支持。对于这样的版本,一种可能性可能是使用封闭的[@@@warning ""]属性:

[@@@warning "-8"]
let [a;b] = [1;2]
[@@@warning "+8"]

但这也会使体内的警告失效。

如果您正在生成代码并且统计地知道列表的大小,另一个选择可能是使用元组进行绑定(又名let (a,b)= …)?

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

使用 OCaml 警告属性禁用警告 8:不详尽的匹配 的相关文章

  • Eclipse - @SuppressWarnings("javadoc") 不起作用

    我将 Eclipse 配置为显示有关公共元素缺少 javadoc 注释和标签的警告 这对我来说非常有用 可以很好地记录我的代码 但有时我有一堂课 其中有几个常量描述例如 DFA 的状态或其他东西 不需要记录这些常量 因为它们是不言自明的 所
  • 如何强制Delphi编译器显示所有提示和警告

    有没有办法强制Delphi编译器一直显示所有提示和警告 这是我目前在 Delphi 6 中看到的行为 从源代码管理中查看我的应用程序的最新副本 在Delphi中打开项目并编译 显示项目的所有提示和警告 更改一个单位 Compile 仅显示更
  • 如何使用List.fold_left?

    我仍在尝试了解如何fold left完全有效 它是否像这样迭代列表List iter 或者我的代码还有其他问题吗 我认为 e 是列表中的元素 所以它是一个元组 并且fst e获取元组的第一个元素并且snd e获取元组中的第二个元素 let
  • 如何通过属性控制方法行为?

    我想将自定义属性应用于某些方法 指示它们应作为事务处理 一般来说 我知道如何通过继承 System Attribute 创建自定义属性 但我不知道如何执行我需要的操作 我的目标是这样的 TransactionalMethod public
  • Xcode 7 - 如何删除 ld: warning: -read_only_relocs 不能与 x86_64 一起使用

    我最近更新到了 Xcode 7 现在在编译时收到以下警告 ld 警告 read only relocs 不能与 x86 64 一起使用 我认为我没有更改构建设置或代码中的任何内容来创建它 有谁知道导致此警告的原因以及如何删除它 我已经为感兴
  • 将 OCaml 转换为 F#:将 OCaml open_box 和 close_box 转换为 F#

    我正在将几个基于 OCaml 的模块转换为 F 并遇到了 OCaml 打印格式化函数open box 和 close box http caml inria fr pub docs manual ocaml libref Format ht
  • AttributeError:模块“集合”没有属性“设置”

    我在尝试通过输入 python3 odoo bin odoo15 在 mac m1 上安装 odoo 时遇到问题 odoo python3 odoo bin odoo15 Traceback most recent call last Fi
  • 如何使用 jQuery 获取 attr?

    div class item p img src images photos sample1 jpg border 0 p p Dining Area p div div class item p img src images photos
  • 是否可以将 __m128 变量中的内部值作为 C++ 类中的属性进行访问?

    我想要一个使用 SSE 内在函数实现的 Vector 类 表示 3 个浮点数的向量 因此我不会使用 m128 类型的第四个元素 但我希望能够像属性一样轻松访问它们 因此 myVector x 将访问 vec 中的 0 31 位 myVect
  • 类“属性”与“成员”与“变量”与“字段”的术语[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 似乎开发人员在引用存储在类实例中的数据时经常互换使用这些术语 每个术语之间是否存在技术差异 或者可以互换使用它们吗 根据不同的答案 类
  • 复合属性

    有没有办法在 C 中制作复合属性以在编译时提供等效的元数据 例如 改变 ClassInterface ClassInterfaceType AutoDual ProgId MyProgId MyMefExport MyProgId publ
  • Pattern 和 type="email" 一起使用是否有问题?

    HTML5 电子邮件类型和模式 使用新的 HTML5 之间是否存在任何问题 冲突或其他问题 type值 例如email tel等 与pattern属性 我不是指 HTML5 浏览器兼容性 只是指这些属性的新值与pattern属性 为了清楚起
  • 获取警告的回溯

    在 numpy 中我们可以做np seterr invalid raise http docs scipy org doc numpy reference generated numpy seterr html获取引发错误的警告的回溯 请参
  • 使用不带标签的 Core.Std.List.fold_left

    我正在尝试 Core 的List fold left List fold left a Core Std List t gt init b gt f b gt a gt b gt b
  • 如何使用必须包含空格的 title~= 进行 CSS 属性选择器? [复制]

    这个问题在这里已经有答案了 我有以下选择器 post link title Corporate 现在 我需要只选择标题仅在开头而不是标题中其他位置包含 Corporate 一词的元素 所以我有两个选择 1 创建一个仅检查标题开头的选择器 然
  • NetworkX节点属性图

    我使用 networkx 进行可视化 当我使用该功能时我看到 绘制网络x边缘标签 我可以检索边缘的标签 我想在节点上打印属性 而不是标签 几乎尝试一切 仍然卡住了 如果我每个节点有 5 个属性 我是否可以在每个节点上打印特定属性 例如 如果
  • 如何解决警告“没有明确的所有权”

    我有一种方法 它采用间接指针作为参数 然后 如果出现错误 将其设置为错误对象 我正在尝试打开尽可能多的警告 但其中之一 Implicit ownership types on out parameters 在此方法中生成警告 id doWi
  • 提升灵气自定义综合属性(通过语义动作设置结构体属性的特定成员)

    假设我有一个结构体 我想用灵气解析成 它的定义如下 struct data bool export std wstring name data export false 另外 假设该结构已适应融合 如下所示 BOOST FUSION ADA
  • OCaml 3.12 中的一流模块:它们将使哪些事情变得更容易(或可能)?

    我听说 OCaml 3 12 中即将推出 一流模块 他们将提供什么优势 哪些孩子的事情会变得更容易 他们试图解决什么问题 一个简单的例子就足够了 这只是一个可能的应用程序 但一流的模块可以轻松地对存在类型进行编码 基本上是一个模块打包存在类
  • 在 OCaml 自定义顶层设置提示

    在 OCaml 自定义顶层中 有没有一种方法可以通过编程方式设置提示 到别的东西 我希望能够更改它以响应用户的最后一个自定义功能 有点像bash你如何设置PS1 我什至找不到 directive 来更改它 谢谢 在 toplevel top

随机推荐

  • 如何使用 python 处理 dbus 接口的属性?

    我即将致力于实施mpris http mpris org 但目前我不知道如何使用 python dbus 读取 写入 dbus 接口属性 有这方面的例子吗 终于得到了答案 dbus service method dbus PROPERTIE
  • CSS 缩放不是模糊而是像素化

    我想在图像的 CSS 中使用缩放属性 但不希望对放大的图像产生模糊效果 而是像素化 我怎样才能实现这个目标 编辑 如果需要 可以使用其他属性或其他语言 您 当前 不能使用放大并指定浏览器应使用最近邻缩放 无论是 HTML 图像 放大的 HT
  • Javascript - 捕获对对象属性的访问[重复]

    这个问题在这里已经有答案了 是否可以捕获对象的 任何 属性被访问或尝试访问的时间 Example 我已经创建了自定义对象Foo var Foo function var self set a few properties return se
  • 将表行变成 Rails 中的链接

    我正在尝试在表中创建一行链接到编辑页面 我知道正在创建链接 因为我可以将它们打印出来 我很接近 但缺少一些重要的东西 我需要更改什么才能使链接正常工作 h1 Scouts h1 p p div class message board tab
  • PHP 时区 getTransitions 值得信赖吗?

    您是否曾经遇到过通过 getTransitions 函数进行 PHP 时区转换的任何问题 我正在尝试将阿根廷日期转换为 GMT 如果我查看转换数组 我会得到 63 gt Array ts gt 1287284400 time gt 2010
  • 使用“overflow: auto”滚动 div 的位置

    鉴于这个 HTML 片段 div style width 200px height 200px border 1px solid black 1 br 2 br 3 br 4 br 5 br 6 br 7 br 8 br 9 br 10 b
  • 在 xml 文件中写入一些字符,例如“<”

    自从我开始编程以来 我在为 Android 开发时在 Eclipse 中的 string xml 中使用了一些特殊字符 例如 一年来一切都运行良好 但今天 我只想做一些小的更改并开始编辑我的 xml 文件 我现在收到这些字符的编译错误 因为
  • 使用元类与多重继承相结合的类型错误

    我有两个关于数据类和多重继承的问题 第一个是 为什么我会收到该类的 TypeErrorDerived但不是为了Derived2 class Metaclass type pass class Klass object metaclass M
  • 文件下载已损坏

    我作为一名实验室讲师 试图通过将文件保留在 webroot 之上并强制他们登录 通过大学的 LDAP 进行身份验证 来确保我的学生无法过早下载他们的入门文件 验证它是否已经过版本然后 time 使用 readfile 向他们发送文件 不幸的
  • Python 中键为整数对的字典

    在Python中如何创建一个键为整数对的字典 例如 如果我这样做 mydict dict mydict 1 2 xxx 我收到错误TypeError unhashable type list 所以我想出了两种不同的解决方案 字符串或元组作为
  • Android 2.2 导致图片颜色失真?

    我的应用程序中有一些 png 文件 我需要在运行时加载这些 并从中获取某些像素的确切颜色 重要的是 我不想缩放这些图片 我不会直接在用户界面上显示它们 它们充当地图 现在 在Android 1 5上 这已经没有问题了 我将这些图像放在 re
  • 列出所有物理驱动器 (Windows)

    如何使用 C C 获取 Windows 计算机上的所有物理驱动器路径 PhysicalDriveX 答案在this https stackoverflow com questions 327718 how to list physical
  • 根据编译时常量禁用/隐藏模板中的函数

    是否可以使用编译时常量有条件地隐藏或禁用模板类中的函数 想象一下下面的类 template
  • InnoDB:无法打开或创建系统表空间

    我在 Xampp 上打开 mysql 服务器时遇到问题 错误 MySQL 意外关闭 这可能是由于端口被阻止 缺少依赖项 不正确的权限 崩溃或通过其他方法关闭 按日志按钮查看错误日志并检查 Windows 事件查看器以获取更多线索 如果您需要
  • 如何将 primevue css 文件添加到 JHipster 项目

    我正在尝试使用 vue js 应用程序将 primevue 添加到我的 jhister 中 我正在遵循这些步骤 1 运行这些评论 npm install primevue save npm install primeicons save 2
  • 假冒客户端和属性中的名称

    我有这样的东西 FeignClient name airport service name 我有编译错误 例如 java lang IllegalStateException 服务 ID 不合法主机名 airport service nam
  • GitHub Action 部署到 Azure Web App 时出错

    刚刚转换为新的 GitHub 应用程序服务操作构建和部署管道并收到以下错误 Run azure webapps deploy v2 with app name slot name publish profile package Packag
  • Visual Studio 将新文件放入错误的目录

    我使用 cmake 和 Visual Studio 并具有以下目录结构 workspace CMakeLists txt project1 src project2 src build 这背后的想法是源外构建 以便 cmake 生成的构建文
  • 从另一个线程调用 setter 时读取实例变量是否是线程安全的?

    我有一个具有属性的对象 interface Car property strong NSLicensePlate licensePlate end 我在方法中使用该属性 void doSomething licensePlate frobn
  • 使用 OCaml 警告属性禁用警告 8:不详尽的匹配

    我正在尝试编写类似于以下内容的代码 let a b body 1 2 我想仅针对该模式禁用警告 8 a b 而不是为了身体或让之外的任何东西 我尝试设置警告属性来禁用警告 但以下方法都不起作用 let warning 8 a warning