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

Почему Haskell не делает вывод о классах типов данных в сигнатурах функций?
Во-первых, этот вопрос не на 100% специфичен для Haskell, не стесняйтесь комментировать общий дизайн классов типов, интерфейсов и типов. Я читаю LYAH - создание типов и классов типов . Ниже приводится отрывок по которым я ищу дополнительную...
889 просмотров

Ограничение операции путем сопоставления параметра типа с типом аргумента, зависящим от пути.
Я хотел бы использовать систему типов Scala для ограничения операций в системе, где есть версионные ссылки на некоторые значения. Все это происходит в некотором транзакционном контексте Ctx , к которому прикреплен тип версии V . Теперь есть...
353 просмотров

Почему я получаю общее нарушение ограничений во время выполнения?
Я получаю следующее исключение при попытке создать новый экземпляр класса, который сильно зависит от дженериков: new TestServer(8888); System.TypeLoadException GenericArguments[0], 'TOutPacket', on...
7499 просмотров
schedule 03.11.2022

Возврат чего-то из другого класса типов B в функцию класса типов A в Haskell
Я делаю забавный проект, в котором пытаюсь переделать некоторые базовые типы данных и концепции из Java. В настоящее время я занимаюсь итераторами. Мой подход заключается в следующем: (1) перевести интерфейсы в классы типов (2) объявить...
263 просмотров
schedule 03.09.2022

Перечисление‹? расширяет интерфейс›
Я пытаюсь создать набор перечислений, расширяющих общий интерфейс, например: interface Fooable { void someCommonMethod(); } enum E1 implements Fooable { // some enumuerations and a definition for someCommonMethod() } enum E2 implements...
5603 просмотров
schedule 18.01.2024

Ограничения типа Scala Generics
Я сейчас читаю Programming Scala . Я только что прочитал главу о неявном преобразовании типов, где вводится символ <% . Также есть символ <: и символ < . Может ли кто-нибудь обобщить различные ограничения типов? Например, я борюсь...
5151 просмотров
schedule 09.07.2022

Невозможно привести конкретную реализацию к интерфейсу реализации с ограниченным типом
Иметь сложный сценарий посетителя с ограниченным интерфейсом: public enum EDTypes { A1, A2 } public interface IProcing { string doIt(string value); } public interface IFooIni : IProcing { } public interface IFooEnd : IProcing { } public class...
636 просмотров

Как мне применить дженерики к следующему методу интерфейса, учитывая текущий код?
Это продолжение еще одного вопроса , на который я получил много замечательных комментариев и ответов. Этот вопрос поднял этот. Скажем, у меня есть следующий абстрактный класс: public abstract class Entity<TId> :...
159 просмотров
schedule 28.05.2022

Приоритеты нескольких ограничений для параметра универсального типа
В следующем примере у меня есть два ограничения, Foobar и IFoobar<T> , для типа T в универсальном классе FoobarList<T> . Но компилятор выдает ошибку: Не удается неявно преобразовать тип «Foobar» в «T». Существует явное преобразование...
136 просмотров
schedule 20.05.2022

Упаковываются ли типы значений при передаче в качестве общих параметров с ограничением интерфейса?
(В результате исследования, чтобы ответить на этот вопрос, я (думаю, что да!) решил, что ответ «нет». Однако мне пришлось искать в нескольких разных местах, чтобы понять это, поэтому я думаю вопрос по-прежнему имеет значение. Но я не расстроюсь,...
1772 просмотров
schedule 14.01.2023

Ограничения типа для экземпляров класса типов в Haskell?
Итак, я играл с Data.Set .Monad , который не является экземпляром Data .Foldable , как Data.Set . Я решил попробовать добавить этот экземпляр сам в качестве эксперимента: import Data.Foldable (Foldable, foldr) import qualified Data.Set.Monad...
320 просмотров
schedule 17.08.2022

Ошибка компилятора Swift: ошибка сегментации 11 возникает при использовании ограничений типа
Итак, в Swift я получаю следующую ошибку: Команда не выполнена из-за сигнала: ошибка сегментации: 11, при излучении функции IR SIL при создании нового экземпляра класса по ограничениям типа в следующем коде: public protocol AddOn {...
951 просмотров

Moose строит объекты из отдельных аргументов
Я баловался с Moose около семи месяцев, а Perl - чуть дольше, но не могу понять, как можно создать несколько атрибутов в классе, просто указав один аргумент для каждого, а не целую их хэш-ссылку. Я много искал в документации и в Интернете, но либо...
126 просмотров
schedule 07.04.2022

Ограничение class или struct должно предшествовать любому другому ограничению. Почему?
Вот следующий простой интерфейс: public interface IService { } А теперь следующий открытый общий класс, который имеет ограничение типа для этого интерфейса, а также для любого другого ссылочного типа: public class Service<T>...
509 просмотров
schedule 20.06.2023

Передача параметра через конструктор в общих ограничениях
Я хочу передать параметр в конструкторе в универсальную функцию с ограничениями. Можно ли создать экземпляр T с параметрами? Что-то вроде list.Add(new T(1)); namespace ConsoleApplication { class Program { static void Main(string[] args)...
83 просмотров
schedule 26.03.2022

Создание экземпляров класса типов на основе сравнения во время выполнения в Haskell
Следуя методике, описанной здесь , я использовал пакеты constraints и reflection для создавать локальные экземпляры класса типов Rel , которые представляют (на уровне типа) отношение к значениям типа t . Теперь я хотел бы создать экземпляры...
168 просмотров

Почему я не могу вернуть enum с интерфейсом?
Посмотрите на этот ответ. Все хорошо, кроме этого: public <E extends Enum<E> & MyInterface> E getParametrizedEnum() { String someString = "..." return MyEnum.valueOf(someString); //compile error here } Идея Intellij...
96 просмотров
schedule 26.05.2023

Получить ограничение в объявлении в стиле GADT без специального использования конструктора?
Рассмотрим следующее: {-# LANGUAGE GADTs, GADTSyntax #-} data Test a where Test :: Ord a => { first :: a, second :: a } -> Test a comp :: Test a -> Bool comp (Test fst snd) = fst < snd Конструктор Test объявлен с...
149 просмотров
schedule 20.10.2023

Специализация шаблонов с ограничениями в C++
Я пытаюсь реализовать управляемый-> собственный преобразователь в С++/cli. Есть около 20 типов для преобразования, поэтому я пытаюсь использовать для этого шаблоны. Проблема в том, что я должен обрабатывать типы значений и ссылочные типы по-разному....
310 просмотров

Ограничить ограничение семейства типов некоторой парой
Рассмотрим следующее, где я пытаюсь сказать, что « a — это пара»: type family F t a :: Constraint type instance F Int a = (a ~ (a1, a2)) Это не работает, потому что и a1 , и a2 не входят в область действия, но есть ли способ выразить это?...
203 просмотров
schedule 22.01.2023