Вопросы по теме 'type-constraints'

Более короткий способ ограничить функцию
Я ищу более короткий способ (если он есть) для ограничения функции. Например. let inline sincos (a:'T) = let y = sin a let x = cos a y, x Для использования этой функции 'T должен поддерживать как Sin , так и Cos статические...
236 просмотров
schedule 14.09.2022

реализация универсального интерфейса с ограничениями типа
У меня есть проект Visual Studio 2008 С# 2.0 CF, в котором я реализую универсальный интерфейс IComparison . Метод IComparison.Compare может вызываться для любого типа сравнения, допустимого для указанных объектов, поэтому я не хочу накладывать на...
1901 просмотров
schedule 14.10.2022

Как наложить ограничения на связанные данные?
Я хотел бы заявить, что связанные данные всегда являются экземпляром определенного класса. class (Context (Associated a b)) => Class a where data Associated a :: * -> * instance Context (Associated a b) where func1 = error "func1"...
780 просмотров
schedule 05.08.2022

Списки типов с ограничениями
Я пытаюсь создать список на уровне типов, но у меня возникли проблемы с выяснением того, как применять ограничения. Мой базовый код: data Foo z q = Foo1 (z q) | Foo2 (z q) class Qux q -- where ... class Baz z -- where ... class...
672 просмотров

Ограничения типа в интерфейсе применяются к базовому классу
У меня есть базовый класс, который определяет такой общий метод: public class BaseClass { public T DoSomething<T> () { ... } } Поскольку этот класс принадлежит третьей стороне и не имеет интерфейса, я определяю интерфейс,...
2069 просмотров
schedule 06.06.2023

Есть ли способ объединения ограничений типа?
Есть ли в Haskell способ ИЛИ объединить несколько ограничений типа, чтобы объединение было выполнено, если любое из них выполнено? Например, предположим, что у меня есть GADT, параметризованный DataKind , и я хочу, чтобы некоторые конструкторы...
502 просмотров
schedule 22.06.2023

Как использовать ограничения f # для общих функций расчета?
type Point<'t> = val X : 't val Y : 't new(x : 't,y : 't) = { X = x; Y = y } let clampedSubtract (p1:Point<_>) (p2:Point<_>) = Point( max (p2.X - p1.X) 0, max (p2.Y - p1.Y) 0 ) Если вы посмотрите на приведенный...
201 просмотров
schedule 28.03.2024

Можно ли преобразовать специфику из int в качестве ограничения типа в C #?
У меня есть код, который выглядит так: class A<T> where T : // what should I say here to make this work? { void foo() { int x = 0; T y = (T)x; // this is a compile error without proper type restrictions } }...
129 просмотров
schedule 23.06.2023

Ограничение общего типа класса с предварительным объявлением - delphi 2009
В Delphi 2009 мы можем использовать типы классов в качестве ограничения для объявления универсальных типов: type TMyBaseClass = class //Attributes and methods here end; type TMyGenericClass<T: TMyBaseClass> = class...
68 просмотров

Можно ли сделать экземпляр класса не для типа, а для целого класса в Haskell?
Предположим, я хочу сделать все числа экземпляром Monoid . Вместо того, чтобы создавать экземпляр для каждого Num следующим образом: instance Monoid Int where mappend = (+) mempty = 0 instance Monoid Float where mappend = (+) mempty =...
162 просмотров
schedule 15.09.2022

Как создать общую функцию для добавляемых параметров?
Работая с дженериками Swift, у меня есть следующий вопрос: Эта функция работает, как и ожидалось, с типом Int: func + (number: Int, vector: [Int]) -> [Int] { var resArray:[Int]=[] for x:Int in vector {...
356 просмотров
schedule 16.04.2023

Невозможно создать объект с ограничением рекурсивного типа?
Это чисто академический вопрос, но он основан на этом вопросе об ограничениях типов. . Спрашивающий привел это в качестве примера: type Something<'a, 'b when 'b :> seq<'b>>() = member __.x = 42 который f# успешно...
96 просмотров
schedule 14.07.2022

Универсальное чтение scala-cass из таблицы cassandra в качестве класса case
Я пытаюсь использовать scala-cass для чтения из cassandra и преобразования набора результатов в класс case с использованием resultSet.as[CaseClass] . Это прекрасно работает при выполнении следующего. import com.weather.scalacass.syntax._...
239 просмотров

Тип данных с ограничением типа в Wadler - статья Суть функционального программирования,
В статье Фила Уодлера «Сущность функционального программирования» Уодлер описывает применение монад с помощью простой программы-интерпретатора. Программа показана ниже: Терм — это переменная, константа, сумма, лямбда-выражение или приложение....
113 просмотров

Как наложить ограничение типа на связанный тип связанного типа (например, Iterator :: Item)?
Я пытаюсь определить черту связанного типа. Я также хочу, чтобы связанный тип реализовал Iterator с его Item связанным типом, реализующим AsRef<str> . Хотя я знаю, как это сделать для функции или конкретного Iterator::Item типа, я не...
1057 просмотров

Можно ли применить ограничение типа для экземпляра класса для более высокого типа?
У меня есть тип, определенный следующим образом: newtype PrimeSet a = P Integer deriving Eq Я также определил функцию, которая преобразует набор простых чисел в список, учитывая, что ее параметр типа — Integral . toList :: Integral a...
100 просмотров

Можно ли в Haxe ограничить параметр типа универсальным типом в интерфейсе?
РЕДАКТИРОВАТЬ: этот пример был слишком урезан, я перефразировал этот вопрос здесь Ниже у меня есть надуманный пример, где у меня есть общий интерфейс с методом, который принимает аргумент V, который «расширяет» T. Затем у меня есть класс, который...
83 просмотров

Ввод функции React Component Factory
Учитывая тип type EnumerableComponentFactory = <C, I>(config: { Container: React.ComponentType<C>; Item: React.ComponentType<I>; }) => React.FC<{ items: I[] }>; со следующей реализацией const Enumerable:...
157 просмотров