-
Notifications
You must be signed in to change notification settings - Fork 2
Estimate и EstimateM
Андрей Мулик edited this page Sep 21, 2023
·
1 revision
Estimate
- класс типов, (неизменяемый) размер которых можно сравнить с конечным числом за конечное время.
EstimateM
- класс типов, (изменяемый) размер которых можно сравнить с конечным числом за конечное время.
SizeHint
- вспомогательный тип, содержит дополнительную информацию о размере структуры.
Может быть полезен при создании или модицикации структуры.
Функции класса Estimate
и их вариации помогают в работе с бесконечными и потенциально бесконечными структурами, например, с различными видами списков и деревьев. Например, вы можете определить, что данная структура es
короче n
, выполнив выражение es .> n
и т.п.
Класс Estimate
добавлен в sdp-0.2
, а EstimateM
- в sdp-0.3
.
Метод | Estimate | Добавлен | EstimateM | Добавлен |
---|---|---|---|---|
Подказка о размере структуры | sizeHint | 0.3 | getSizeHint | 0.3 |
Размер структуры | sizeOf | 0.3 | getSizeOf | 0.3 |
Сравнить размеры | (<==>) | 0.2 | estimateM | 0.3 |
Сравнить размер с числом | (<.=>) | 0.2 | lestimateM | 0.3 |
Размер равен числу? | (.==) | 0.2 | lestimateMEQ | 0.3 |
Размер не равен числу? | (./=) | 0.2 | lestimateMNE | 0.3 |
Размер больше или равен числу? | (.>=) | 0.2 | lestimateMGE | 0.3 |
Размер меньше или равен числу? | (.<=) | 0.2 | lestimateMLE | 0.3 |
Размер больше числа? | (.>) | 0.2 | lestimateMGT | 0.3 |
Размер меньше числа? | (.<) | 0.2 | lestimateMLT | 0.3 |
Размеры равны? | (.==.) | 0.2 | estimateMEQ | 0.3 |
Размеры не равны? | (./=.) | 0.2 | estimateMNE | 0.3 |
Длиннее или равен? | (.>=.) | 0.2 | estimateMGE | 0.3 |
Короче или равен? | (.<=.) | 0.2 | estimateMLE | 0.3 |
Длиннее? | (.>.) | 0.2 | estimateMGT | 0.3 |
Короче? | (.<.) | 0.2 | estimateMLT | 0.3 |
Функция | Estimate | Добавлен | EstimateM | Добавлен |
---|---|---|---|---|
Сравнить число с размером | (<=.>) | 0.2 | restimateM | 0.3 |
Число равно размеру? | (==.) | 0.2 | restimateMEQ | 0.3 |
Число не равно размеру? | (/=.) | 0.2 | restimateMNE | 0.3 |
Число больше или равно размеру? | (>=.) | 0.2 | restimateMGE | 0.3 |
Число меньше или равно размеру? | (<=.) | 0.2 | restimateMLE | 0.3 |
Число больше размера? | (.>) | 0.2 | restimateMGT | 0.3 |
Число меньше размера? | (.<) | 0.2 | restimateMLT | 0.3 |