Публикации по теме 'type-inference'
Понимание вывода типа TypeScript
Неожиданное путешествие через ужасы вложенных дженериков и интерфейсов
Недавно команда Redux решила преобразовать проект в TypeScript. Я много использовал TypeScript на моей должности в Unlock, и решил погрузиться в дело.
Поскольку проект уже содержит значительный объем ввода в index.d.ts , большая часть работы заключается в настройке и поиске умных способов выполнения запросов на вытягивание, которые должны быть достаточно короткими, чтобы их можно было просмотреть.
Войдите в..
Вопросы по теме 'type-inference'
Почему «Код недостаточно общий»?
Кто-нибудь может объяснить, почему второй пример ниже не компилируется?
«Тест 2» дает «ошибка FS0670: этот код недостаточно общий. Переменная типа ^a не может быть обобщена, поскольку она выходит за пределы ее области действия». Я не понимаю это...
1585 просмотров
schedule
26.01.2024
Устранение неполадок: почему здесь не происходит сбой вывода типов?
Учитывая тип, объявленный, как показано ниже
public class EqualityProbe<T>
{
public EqualityProbe( Func<T> functionToGetActualValue, T expectedValue, string probeDescription) {..}
Код клиента:
// cannot infer bool here
new...
91 просмотров
schedule
24.09.2022
Почему List ‹T› недействителен в ковариантном интерфейсе MyInterface ‹out T›
Последующий вопрос к предыдущему вопросу , это было определено как проблема ковариации. Сделаем еще один шаг, если я изменю IFactory следующим образом:
class Program
{
static void Main(string[] args)
{
IFactory<IProduct>...
1344 просмотров
schedule
10.10.2023
Java — дженерики против приведения объектов
У меня есть класс Data<T>
с общим атрибутом
private T value;
есть ли лучший способ сделать следующее? т.е. вернуть общий тип в разных формах?
public List<String> getValues() {
if (value.getClass() != ArrayList.class)...
6901 просмотров
schedule
22.12.2023
Выводимые типы F# в If/Then
Если у меня есть следующая функция:
let myFunc x y =
if y = 0 then 1
x
Я получаю сообщение об ошибке:
Program.fs(58,17): error FS0001: This expression was expected to have type
unit
but here has type
int
Почему...
354 просмотров
schedule
17.01.2024
Типы возвращаемых значений для нереализованных методов в типажах
Предположим, у меня есть трейт SomeTrait с нереализованным методом func . Этот метод вернет что-то, что расширяет SomeTrait . Другими словами, у меня есть что-то вроде следующего:
trait SomeTrait
{
def func(x: Int): SomeTrait
}
Теперь...
933 просмотров
schedule
26.09.2022
Предполагаемый тип и динамическая типизация
На языке программирования, в чем разница между Inferred Type и Dynamic Typing? Я знаю о динамической типизации, но не понимаю, чем динамическая типизация отличается от Inferred Type и чем? Может ли кто-нибудь дать объяснение на каком-нибудь примере?
3706 просмотров
schedule
02.03.2024
Компилятор F# выводит конкретные типы из первого использования универсальных функций при каррировании
У меня проблема с выводом типа и каррированием.
У меня есть вспомогательный метод:
requestToGroup :
group:'T array ->
operation:('T -> System.Threading.Tasks.Task<'B>) ->
predicate:('B -> bool) ->...
106 просмотров
schedule
19.02.2024
Вывод типа Java с нижними ограниченными типами
Почему Java может сделать вывод об общем предке нескольких типов с верхней границей, но не может сделать вывод об общем предке нескольких типов с нижней границей?
Более конкретно, рассмотрим следующие примеры:
static class Test {
static...
404 просмотров
schedule
10.09.2022
Можно ли получить ошибку бесконечного вида в Haskell 98?
Я реализую добрую систему для нового функционального языка программирования, и в настоящее время я пишу функцию для объединения двух видов. Рассмотрим четыре случая:
+---------+---------+-------------------------------------------------------+
|...
849 просмотров
schedule
25.05.2024
Почему этот пример потока Java 8 не компилируется?
Я пытаюсь понять, почему этот код не компилируется в JDK 1.8.0_45 :
public class Example<E extends Example<E>> {
public List<? extends Example<?>> toExamples(Collection<String> collection) {
return...
14787 просмотров
schedule
27.07.2022
Возможен вывод обратного типа?
Учитывая следующие классы (используются фабрики, потому что С# не поддерживает вывод типа в конструкторах):
public class A<T>
{
public A(B<T> b) { }
}
public class B<T>
{
public B(C<T> c) { }
}
public class...
126 просмотров
schedule
07.10.2022
Ошибка определения типа ржавчины
Я пишу чат-сервер через TCP в качестве учебного проекта. Сегодня я возился с ящиком ws , но столкнулся с проблемой. Это код, который я написал, изменяя их пример сервера .
extern crate ws;
extern crate env_logger;
use ws::listen;
fn main()...
133 просмотров
schedule
09.09.2022
Вывод подтипов общих типов в TypeScript
Я хочу иметь функцию, которая берет некоторый объект и возвращает его атрибут x . Объект должен быть ограничен общим типом Type<X> , и я хочу, чтобы тип возвращаемого значения был типом атрибута x .
Чтобы ограничить ввод до Type<X>...
660 просмотров
schedule
22.01.2024
Удивительный вывод типа для именованного поля в Haskell
Рассмотрим следующую стенограмму GHCi, версия 8.2.2:
GHCi, version 8.2.2: http://www.haskell.org/ghc/ :? for help
Prelude> :set -XRankNTypes
Prelude> data Functor f = Functor { fmap :: forall a b. (a -> b) -> f a -> f b }...
75 просмотров
schedule
01.04.2024
python 3: вывод типов с помощью mypy?
Учитывая следующий фрагмент в python 3
def foo() -> List[X]: pass
class X:
def bar(self) -> MYTYPE: pass
для следующего выражения:
[x.bar() for x in foo()]
Могу ли я использовать пакет mypy , чтобы правильно...
341 просмотров
schedule
07.01.2024
Вывод типа Perl 6
Данный:
sub abc(Int $n) { say $n }
Если мы передадим переменную типа Str в abc , мы получим ошибку времени компиляции:
my Str $s = "123"; abc $s;
Если мы передадим нетипизированную переменную, содержащую строку, мы получим...
373 просмотров
schedule
22.01.2024
TS7017 подразумевает вывод любого типа + типа
Вот сжатый фрагмент кода с ошибкой:
export default function formatSql(this: EscapeFunctions, sqlQuery: string, values: QueryParams) {
if (isPlainObject(values)) {
console.log(values[p]); // <-- Element implicitly has an 'any' type...
124 просмотров
schedule
16.12.2023
Вывод типа ведет себя по-разному для аналогичных случаев
Выполнение следующего кода (Dart 2.3) вызывает исключение: type 'List<dynamic>' is not a subtype of type 'List<bool>'
bar() => 0;
foo() => [bar()];
main() {
var l = [1, 2, 3];
l = foo();
}
Однако этот немного...
43 просмотров
schedule
26.11.2023
Как помочь системе вывода типов определить тип аргумента замыкания?
У меня есть замыкание color , но система типов не может вывести тип своего аргумента pixel .
pub fn solve_part2(input: &[u32]) -> String {
let color = |pixel| {
pixel
.skip_while(|l| **l == 2)
.next()...
61 просмотров
schedule
08.08.2022