Resultados da pesquisa a pedido "generics"

1 a resposta

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: ...

1 a resposta

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>() ...

1 a resposta

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; ...

2 a resposta

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; } } ...

1 a resposta

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 ...

1 a resposta

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, ...

1 a resposta

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 é ...

2 a resposta

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() { ...

1 a resposta

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 ...

1 a resposta

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 ...