Публикации по теме 'type-safety'
Эффективные типы: параметризованные типы, дружественный учебник для начинающих (поток)
Небольшое примечание: этот пост отмечен тегом Flow , но все, кроме последнего набора примеров, переводится непосредственно на TypeScript 2+ (с включенным --strictNullChecks ). Кроме того, этот пост скопирован из моего блога , потому что я не очень-то люблю самообслуживание.
«Параметризованные типы» — это особенность Flow, TypeScript и растущей коллекции других языков. Это способ пробить дыры в определении типа, предоставляя более позднему пользователю возможность заполнить пробелы..
Вопросы по теме 'type-safety'
Эмуляция класса структуры типа значения в PHP
Есть ли способ имитировать структурный класс в PHP? то есть класс, который передается по значению, а не по ссылке, поэтому он все еще может иметь подсказку типа ...
И если да, то какие разные техники можно использовать? Какая лучшая техника?...
909 просмотров
schedule
02.05.2024
Дженерики Java: почему someObject.getClass() не возвращает Class‹? расширяет T›?
Я ожидаю, что с точки зрения времени компиляции, а также с точки зрения времени выполнения для .getClass() не будет проблемой предоставить правильно типизированное возвращаемое значение.
Но я должен ошибаться.
public class _GetClassGenerics2...
8761 просмотров
schedule
17.08.2022
c++: использование безопасности типов для различения типов двух аргументов типа int
У меня есть различные функции с двумя аргументами типа int (и функции, и код вызова я пишу сам). Боюсь перепутать порядок аргументации в некоторых вызовах.
Как я могу использовать безопасность типов, чтобы компилятор предупреждал меня или выдавал...
1904 просмотров
schedule
31.07.2023
Перечисления, классы, отражение и универсальное приведение
Учтите, что у меня есть интерфейс com.mycompany.SomeInterface и перечисление com.mycompany.SomeEnum implements SomeInterface . Я хочу получить все константы перечисления этого класса как экземпляры SomeInterface во время выполнения, используя...
2416 просмотров
schedule
28.04.2024
Зачем отключать проверку дисперсии через @uV?
Я только что наткнулся на следующее определение метода to , определенного TraversableLike (2.10.0):
override def to[Col[_]](implicit cbf: CanBuildFrom[Nothing, A, Col[A @uV]]): Col[A @uV] = {
val b = cbf()
b.sizeHint(this)
b ++=...
205 просмотров
schedule
24.02.2024
С++ 11 Проверка совпадения двух наборов переменных аргументов шаблона
Этот вопрос относится к более раннему вопросу, который я задавал относительно реализации чего-то похожего на сигнал/слоты Qt в С++ 11.
Рассмотрим следующее ( очень упрощенный диспетчер сигналов, который в этом примере не дает никакой пользы, он...
490 просмотров
schedule
27.04.2022
Как создать безопасные перечисления типов?
Добиться безопасности типов с помощью перечислений в C проблематично, поскольку они, по сути, являются просто целыми числами. И константы перечисления фактически определены стандартом как тип int .
Чтобы добиться некоторой безопасности типов, я...
5341 просмотров
schedule
10.07.2023
Почему Retrofit рекламируется как библиотека Type Safe?
Я просто просматривал их главную страницу , и там написано:
Типобезопасный HTTP-клиент для Android и Java
Почему Retrofit позиционирует себя как безопасный по типу, а другие библиотеки (многие другие популярные) - нет?
Прежде чем вы...
1373 просмотров
schedule
17.04.2023
Почему Typescript не выдает ошибку при индексации в неиндексируемые типы и есть ли способ заставить это сделать?
При попытке использовать тип карты , Я неоднократно стрелял себе в ногу, пытаясь получить и установить элементы с помощью квадратных скобок. Я понимаю, что мне нужно использовать map.get(key) и map.set(key,value) , но после столь долгого...
404 просмотров
schedule
27.10.2022
iOS Swift4, как согласовать T.Type и type(of:) для передачи типа динамического класса в качестве параметра функции?
Я пытаюсь реализовать универсальное хранилище параметров конфигурации, используя строку типа класса в качестве ключа словаря. Идея состоит в том, что функция извлечения вернет объект надлежащего типа. Каждый тип уникален в хранилище. Однако, когда...
160 просмотров
schedule
29.09.2023
Как безопасность типов здесь не в опасности
Следующий код выводит «тест»
List<Integer> b = new ArrayList<>();
List a = b;
a.add("test");
System.out.println(b.get(0));
Как это возможно? Разве я не должен ожидать ошибки при добавлении строки в список целых...
51 просмотров
schedule
13.01.2023
TypeScript: как создать типовой объект?
У меня следующие интерфейсы:
interface AppState {
readonly grid : IGridSettings;
readonly selected : ISelectedSettings;
}
interface IGridSettings {
readonly extents : number;
readonly isXY : boolean;
readonly isXZ : boolean;
readonly...
2959 просмотров
schedule
04.08.2023
Typescript: как добавить безопасность типов к свойствам объекта?
У меня есть следующее:
type CommandTypes = 'one' | 'two' | 'three';
const CONST = {
commands: {
a: 'one',
b: 'two',
c: 'error'
},
};
Есть ли способ обеспечить, чтобы все команды были определенного типа?
Прямо сейчас...
378 просмотров
schedule
19.04.2024
Можно ли предотвратить автоматическое приведение к строке с помощью TypeScript?
Следующие проверки типов кода:
type Point = {x: number, y: number};
const p: Point = ...get a point...;
const r = p + " is too far";
Есть ли способ предотвратить это, сделав это ошибкой времени компиляции (возможно, через параметр...
48 просмотров
schedule
20.08.2022
Kotlin Map/List Безопасность типов, допускающих значение Nullable
Я новичок в kotlin, поэтому мне нужны ключевые слова для моих вопросов.
вот мой код котлина:
fun foo(map: Map<String, Int>) {
map.forEach {
println(it.value.toString())
}
}
Этот фрагмент может вызвать NPE при вызове, как...
63 просмотров
schedule
14.07.2023