Вопросы по теме 'hashable'

Сделать структуру Hashable?
Я пытаюсь создать словарь типа [petInfo : UIImage]() , но получаю сообщение об ошибке Type 'petInfo' does not conform to protocol 'Hashable' . Моя структура petInfo такова: struct petInfo { var petName: String var dbName: String }...
11716 просмотров
schedule 18.11.2021

Как согласовать настраиваемый класс с дополнительными свойствами с хешируемым протоколом
Предположим, у меня есть базовый класс «Человек», который я хочу добавить в Set (List) и, следовательно, должен соответствовать Hashable и Equatable: class Person : Equatable, Hashable { let firstName: String let lastName: String var nickname:...
1644 просмотров
schedule 16.10.2021

Почему операторы набора работают с объектами представления dict_key, но не с эквивалентными методами набора?
Редактировать: возможный дубликат. Только после публикации этого вопроса и просмотра «связанных вопросов» я смог найти Почему методы set, такие как .intersection(), не поддерживаются для объектов, подобных set? , этот вопрос может достаточно...
154 просмотров
schedule 02.07.2022

Сбой приложения с ошибкой: общий параметр «T» не может быть выведен
Я пытаюсь получить пользовательский объект, который можно хэшировать из UserDefault. Моя пользовательская модель определена ниже: class WorkerProfileResponse: Mappable, Hashable{ static func == (lhs: WorkerProfileResponse, rhs:...
56 просмотров

Как проверить неизменность на любой глубине в Python?
Я определяю объект Python как «неизменный на любой глубине» iff он (номинально) неизменен; и если это объект «контейнер», то он содержит только объекты, которые «неизменны на любой глубине»; Например, ((1, 2), (3, 4)) неизменен на...
564 просмотров
schedule 09.12.2022

Почему эквивалентный протокол должен быть определен вне класса?
Когда я реализую протокол Hashable. функция эквивалентного протокола должна быть определена вне класса следующим образом. Следующим образом. func ==(lhs: Swap, rhs: Swap) -> Bool { return (lhs.cookieA == rhs.cookieA && lhs.cookieB...
444 просмотров
schedule 16.04.2023

Должны ли хеш-функции быстрого хешируемого протокола возвращать уникальные значения?
Я работаю над учебным пособием по быстрому Tetris для iOS *, и оно завершено и работает. Но меня озадачивает один конкретный аспект — протокол Hashable. Функция: class Block: Hashable, Printable { [...] var hashValue: Int { return...
1129 просмотров
schedule 27.01.2023

Python: как разбить словарь на основе значений его ключей?
Скажем, у меня есть словарь, построенный следующим образом: d={0:1, 1:2, 2:3, 10:4, 11:5, 12:6, 100:7, 101:8, 102:9, 200:10, 201:11, 202:12} и я хочу создать подсловарь d1 , нарезав d таким образом, чтобы d1 содержал следующие ключи: 0,...
32430 просмотров
schedule 26.10.2022

Как Swift hash Strings?
Я просматриваю Swift-реализацию String ( https://github.com/apple/swift/blob/master/stdlib/public/core/String.swift ) String реализует протокол Hashable, что означает, что он должен предоставлять hashValue. Однако в реализации String, указанной...
698 просмотров
schedule 18.09.2023

Можно ли использовать Type в качестве словарного ключа в Swift?
Я делаю ферму, где все, что можно выращивать, соответствует протоколу Growable. Когда вы сажаете растение, вы называете эту функцию: myFarm.planting<T: Growable>(qty: Int, of: T.Type) -> Farm Теперь я хочу, чтобы у каждого экземпляра...
1344 просмотров

как реализовать func hash (в хэшер: inout Hasher)?
У меня есть этот класс в моем проекте: public protocol Disposable { func dispose() var isDisposed: Bool { get } } public final class AnyCancellable: Disposable { private let lock = NSRecursiveLock(name: "any_cancellable") private...
110 просмотров
schedule 24.07.2023

Получение Должен иметь uuid, если нет исключения _objectID при вставке объекта в словарь
Я пишу модульный тест для класса, который использует тип PHAsset . Я издевался над этим, как показано ниже: class PHAssetMock: PHAsset { let date: Date let uuid: UUID init(dateStr: String) { let dateFormatter =...
182 просмотров
schedule 01.03.2023