当前位置: 首页 > 知识库问答 >
问题:

使用优化的约束间隔编译错误。关闭

罗浩然
2023-03-14

我之前发布了一个类似的问题,这是固定的。然而,为了问这个问题,我简化了我最初的问题。但是,这个简单问题的解决方案似乎并没有解决我最初的问题

当我尝试这个简短的代码片段时,我尝试使用Interval.闭包类型从精炼库(https://github.com/fthomas/refined)约束一个Double类型,会产生一个编译错误。

import eu.timepit.refined._
import eu.timepit.refined.api.{Refined, Validate}
import eu.timepit.refined.auto._
import eu.timepit.refined.numeric._
import eu.timepit.refined.api.Refined
import eu.timepit.refined.numeric.Interval

object Lala {
  type UnitReal = Double Refined Interval.Closed[W.`0.0`.T, W.`1.0`.T]

  def foo(x: Double): Either[String, UnitReal] = refineV[UnitReal](x)
}

显示此编译错误:

错误:(13,67)找不到参数v的隐式值:eu。时间坑。精炼 的应用程序编程接口。验证[Double,xxx.Lala.UnitReal]def foo(x:Double):要么[String,UnitReal]=refineVUnitReal

从中似乎缺少Interval.封闭类型的验证实现。我想知道是否有人可以帮我找到Interval.封闭类型的验证特征的实例?或者我应该自己提供这样的实例?

共有1个答案

归翔
2023-03-14

通过分离约束和约束类型,并使用约束来细化值(即refineVOneToZero),我能够解决这个问题:

object Lala {
  type OneToZero = Interval.Closed[W.`0.0`.T, W.`1.0`.T]
  type UnitReal = Double Refined OneToZero

  def foo(x: Double): Either[String, UnitReal] = refineV[OneToZero](x)
}
 类似资料:
  • 我尝试这段简短的代码片段,其中我尝试使用优化库中的正类型约束整数类型(https://github.com/fthomas/refined). 编译此片段时,我收到此错误消息: 错误:(13,29)找不到参数v的隐式值:eu.timepit.refined.api.验证[Int, xxx. Lala. X]val lala: X=fineVX 错误:(13,29)没有足够的参数用于方法应用:(隐式

  • 我试图用Python中的GEKKO定义一个优化问题,我想使用一些带有预定义选择列表的设计变量。此外,每个选择都有一个相关的成本,约束条件是总成本应低于指定的限制。 下面是一个常见的壁虎示例(在这里找到),修改后的x1和x2是sos1。此外,利用所选值x1和x2的索引,我从另一个列表中找到了它们的相关成本,它们的总和应该小于某个值(约束)。 注意:我必须在函数中添加一个if块作为的初始值,而似乎为零

  • 本文向大家介绍C#中尾递归的使用、优化及编译器优化,包括了C#中尾递归的使用、优化及编译器优化的使用技巧和注意事项,需要的朋友参考一下 递归运用 一个函数直接或间接的调用自身,这个函数即可叫做递归函数。 递归主要功能是把问题转换成较小规模的子问题,以子问题的解去逐渐逼近最终结果。 递归最重要的是边界条件,这个边界是整个递归的终止条件。 上面是个经典阶乘函数的实现。这里分2步: 1.转换,把10的阶

  • 我试图修复本页中提到的Jira中的一些错误,但当我试图运行SQL查询时,我得到了以下错误: 错误1064(42000):您的SQL语法中有一个错误;请查看与您的MySQL服务器版本相对应的手册,以便在第1行“constraint”附近使用正确的语法

  • 我正在将错误消息添加到登录屏幕。 虽然代码运行良好,并且执行我希望它执行的操作。它会在执行时导致约束错误。 以下是受影响的约束: 下面是导致errorView出现的函数。 如何在不破坏约束的情况下更改约束? 我尝试self.view.update约束()-但是什么也没有做。我还尝试在添加约束之前删除它们,但是仍然有一个错误。 任何帮助都将不胜感激! 编辑: 我找到了一个Objective-c解决方