Resultados da pesquisa a pedido "generics"
Tentando escrever uma função genérica para analisar JSON em estruturas codificáveis
Atualmente, estou analisando JSON assim struct ExampleStruct : Codable { init() { } // implementation } if let jsonData = jsonString.data(using: .utf8) { do { let decoder = JSONDecoder() let object = try decoder.decode(ExampleStruct.self, from: ...
Por que limites de estreito diferentes do primeiro não são reconhecidos em um tipo associado?
Esse snippet é válido no Rust 1.26.1: use std::ops::AddAssign; trait Trait where for<'a> Self: AddAssign<Self> + AddAssign<&'a Self> + Sized, { } trait Trait2 { type Associated: Trait; fn method(u32) -> Self::Associated; } fn func<T2: Trait2>() ...
Tipo genérico para obter chaves enum como string de união no texto datilografado?
Considere a seguinte enumeração datilografada: enum MyEnum { A, B, C };Se eu quiser outro tipo que seja as seqüências de caracteres unidas das chaves dessa enumeração, eu posso fazer o seguinte: type MyEnumKeysAsStrings = keyof typeof MyEnum; ...
A substituição de um método por um tipo de retorno genérico falha após adicionar um parâmetro
Gostaria de saber por que essa é uma substituição válida: public abstract class A { public abstract <X> Supplier<X> getSupplier(); public static class B extends A { @Override public Supplier<String> getSupplier() { return String::new; } } ...
Por que o Predicado <? super SomeClass> não aplicável a Object?
Suponha que tenhamos um predicado declarado comoPredicate<? super SomeClass>. Eu esperaria ingenuamente que fosse aplicável a qualquer superclasse deSomeClass hierarquia, incluindoObject. No entanto, esse predicado não é aplicável aObject. Estou ...
C # 7.3 Restrição de enum: por que não consigo usar a palavra-chave enum?
Para restringir um parâmetro de tipo genérico a ser de um tipo enum, eu os restringi anteriormente desta forma, o melhor que eu poderia usar para restringir o tipo T para enumerações no pré-C # 7.3: void DoSomething<T>() where T : struct, ...
Como escrever uma característica vinculada a uma referência a um tipo associado na própria característica?
Eu tenho este código: extern crate serde; use serde::de::DeserializeOwned; use serde::Serialize; trait Bar<'a, T: 'a> where T: Serialize, &'a T: DeserializeOwned, { }Eu gostaria de escrever isso usando um tipo associado, porque o tipoT não é ...
Usando delegados no protocolo genérico
Eu tenho esse código: protocol GenericProtocol: class { associatedtype type func funca(component: type) } class MyType<T> { weak var delegate: GenericProtocol? // First error var t: T init(t: T) { self.t = t } func finished() { ...
Obtendo o tipo de retorno de uma função que usa genéricos
Isenção de responsabilidade: seguem funções simplificadas demais, sei que são inúteis function thinger<T>(thing: T): T { return thing; } const thing = thinger({ a: "lol" }); thing.a;O código acima transpila muito bem. Mas eu preciso colocar ...
Como implemento std :: ops comutativos genéricos que envolvem um tipo interno para objetos de características?
Eu tenho: use std::ops::{Add, Div, Mul, Neg, Sub}; pub trait Hilbert: Add + Sub + Mul + Div + Neg + Mul<f64, Output = Self> + Div<f64, Output = Self> + Sized + Copy { fn dot(&self, other: &Self) -> f64; fn magnitude(&self) -> f64; } fn ...