Вопросы по теме 'associated-types'
Проблемы с выводом типа GHC
Вопрос . Есть ли способ заставить этот код работать без явной подписи типа?
Код . Во-первых, у меня есть гораздо более приятный на практике альтернативный класс MonadTrans , вдохновленный Data.Newtype . Это выглядит так,
{-# LANGUAGE...
202 просмотров
schedule
10.05.2022
Невозможно создать массив типов, соответствующих протоколу в Swift
У меня есть следующий протокол и соответствующий ему класс:
protocol Foo{
typealias BazType
func bar(x:BazType) ->BazType
}
class Thing: Foo {
func bar(x: Int) -> Int {
return x.successor()
}
}
Когда я пытаюсь...
6106 просмотров
schedule
02.06.2022
Swift — связанное значение или расширение для Enum
Общий вопрос о быстром перечислении.
Я хочу создать перечисление «значок» и «связать» значение с регистром перечисления
enum Icon {
case plane
case arrow
case logo
case flag
}
Я хочу создать связанное изображение со значением...
7960 просмотров
schedule
21.06.2022
Как устранить неоднозначность связанных типов?
Мой текущий код выглядит так:
pub trait A {}
pub trait HasA {
type A: A;
fn gimme_a() -> Self::A;
}
pub trait RichA: A {}
pub trait RichHasA: HasA {
type A: RichA;
fn gimme_a() -> Self::A;
// ... more things go here ......
3902 просмотров
schedule
19.11.2022
Можно ли объявить связанный тип, который будет представлять признак?
Можно ли объявить связанный тип, который будет представлять признак? Если нет, что я могу сделать вместо этого? Пытаюсь сделать:
trait Foo {
/// A trait representing all types that can be returned from baz()
type ReturnType;
fn...
654 просмотров
schedule
27.07.2022
Ограничить связанный тип
Упрощенная версия моего кода, которая показывает проблему:
protocol Transformer {
typealias Input
typealias Output
func transform(s: Input) -> Output
}
protocol InputType {}
protocol OutputType {}
extension Int: OutputType {}...
95 просмотров
schedule
23.09.2023
Как сделать расширение протокола, используя ассоциированный тип и массив
Скажем, у меня есть эти протоколы
protocol Actionable {
}
protocol M: class {
associatedtype Action: Actionable
var views: [Action] { get set }
}
и две функции
func f(view: Actionable) {
}
func g(views: [Actionable]) {
}...
165 просмотров
schedule
09.10.2022
Протокол, имеющий общую функцию и связанный тип
У меня такой код:
protocol NextType {
associatedtype Value
associatedtype NextResult
var value: Value? { get }
func next<U>(param: U) -> NextResult
}
struct Something<Value>: NextType {
var value: Value?...
456 просмотров
schedule
07.12.2022
Вызов реализации протокола по умолчанию из обычного метода, когда протокол имеет связанный тип
У меня есть протокол со статическим методом с параметром по умолчанию. Я хочу изменить значение по умолчанию в классе, реализующем протокол. По сути дела, то, что легко сделать с классами и super. У меня есть решение только тогда, когда протокол не...
864 просмотров
schedule
08.03.2024
Использование ассоциированного типа в протоколе делегата для универсального типа
У меня есть Game класс. Я сделал его универсальным, потому что мне нужно было поддерживать различные типы плат. Теперь я просто хочу добавить классический делегат в стиле iOS с методом, который будет принимать игру и новое значение очков в...
964 просмотров
schedule
03.03.2023
Как создать классы, соответствующие протоколам с вложенными PAT?
Я пытаюсь использовать стирание типов для создания протокола Repository , которому можно соответствовать (аналогично AnyCollection Swift). Этот протокол необходимо обернуть в класс со стертым типом, поскольку он содержит PAT.
Однако, поскольку...
83 просмотров
schedule
10.02.2023
ассоциированный тип с ячейкой tableview
У меня есть ячейка tableview ( OrderMasterCell ) внутри ячейки tableview (NESTED TABLEVIEW)
OrderMasterCell повторно используется в контроллере с несколькими представлениями.
Допустим, ViewController1 имеет табличное представление, а в ячейке...
173 просмотров
schedule
28.05.2022
Как ввести протокол со связанными типами?
Я создал протокол как
protocol DataBaseManager{
associatedtype type
init()
func insert(object obj: [type])
func getObject(ofType type: type.Type)-> Array<type>
//...
}
Теперь я определил RealmManager как...
396 просмотров
schedule
12.06.2022
Расширение протокола, в котором ассоциированный тип является классом?
Я пробовал что-то вроде этого:
protocol MyModelProtocol {
var name: String { get set }
}
protocol MyProtocol {
associatedtype Model: MyModelProtocol
func changeModel(_ model: Model)
}
extension MyProtocol where Model: AnyObject {
}...
198 просмотров
schedule
29.07.2023
Быстрое перечисление + связанное значение + встроенная проверка регистра
У меня есть следующее быстрое перечисление для возврата асинхронного API-ответа:
enum Result<U: Equatable> {
case success(output: U)
case failure(error: Error)
}
Для упрощения реализации моего модульного теста я хотел бы проверить,...
973 просмотров
schedule
21.08.2023
Быстрый. Внутренний тип в публичном протоколе
Я пытаюсь работать с быстрыми дженериками, но я застрял... Возможно, это невозможно сделать таким образом, но я надеялся, что у кого-нибудь будет хорошее предложение.
Итак, у меня есть этот протокол и тип, который я хочу иметь внутренним:...
595 просмотров
schedule
14.12.2022
Как использовать нестатические типажные объекты со связанными типами?
У меня такой тип:
struct Wrap<T>(Vec<T>);
Я хочу реализовать std::ops::Index и возвращать ссылки на объекты признаков. Это была моя первая попытка ( площадка ):
use std::ops::Index;
use std::fmt::Display;
impl<T>...
543 просмотров
schedule
09.07.2022
Swift - протокол может использоваться только как общее ограничение, потому что он имеет требования к типу Self или связанному типу.
Я работаю над приложением, которому необходимо запрашивать несколько API. Я придумал классы для каждого поставщика API (и, в более крайних случаях, класс для каждой конкретной конечной точки API). Это связано с тем, что каждый запрос API должен...
814 просмотров
schedule
29.06.2023
iOS RXSwift, как получить значение из результата .success?
Каков правильный синтаксис для получения значения, связанного с результатом .success в RXSwift?
.map{ (result : Result<Double>) -> Double in
//how to get duration from result? this does not work
let duration : Double =...
340 просмотров
schedule
18.09.2022
Протокол Swift со связанным типом: как использовать в абстрактном методе?
У меня есть два протокола: один для ViewModel и один для ConfigurableView, который принимает тип ViewModel в качестве связанного типа.:
public protocol ViewModel {}
public protocol ConfigurableView {
associatedtype ViewModelType: ViewModel...
693 просмотров
schedule
10.06.2022