Spec-Zone.ru › Perl 5.30

less

СОДЕРЖАНИЕ

  • ИМЯ
  • СИНТАКСИС
  • ОПИСАНИЕ
  • ДЛЯ АВТОРОВ МОДУЛЕЙ
    • BOOLEAN = less->of( FEATURE )
    • FEATURES = less->of()
  • ОГРАНИЧЕНИЯ

ИМЯ

less - прагма perl для запроса меньшего количества чего-либо

СИНТАКСИС

use less 'CPU';

ОПИСАНИЕ

Это пользовательская прагма. Если вам очень повезёт, некоторый используемый вами код будет знать, что вы запросили меньшее использование ЦП, оперативной памяти, места на диске или... мы просто не можем знать. Обратитесь к документации ко всему, что вы используете в данный момент.

Для общих рекомендаций попробуйте запросить CPU или memory.

use less 'memory';
use less 'CPU';
use less 'fat';

Если вы ничего не запрашиваете, вы запросите less 'please'.

use less 'please';

ДЛЯ АВТОРОВ МОДУЛЕЙ

less находится в ядре как модуль-"шутка" уже много лет, и у него не было реального способа передавать какую-либо информацию. Благодаря Николасу Кларку у нас есть пользовательские прагмы (см. perlpragma), и теперь less может что-то сделать.

Вы, вероятно, можете ожидать, что ваши пользователи смогут догадаться, что они могут запрашивать меньше ресурсов ЦП или памяти или просто «меньше» в целом.

Если пользователь ничего не указал, это интерпретируется как использование тега please. Вам решать, как сделать это полезным.

# equivalent
use less;
use less 'please';

BOOLEAN = less->of( FEATURE )

Метод класса less->of( NAME ) возвращает булево значение, указывающее, запросил ли ваш пользователь меньшее количество чего-либо.

if ( less->of( 'CPU' ) ) {
    ...
}
elsif ( less->of( 'memory' ) ) {

}

FEATURES = less->of()

Если вы не запрашиваете ни одной функции, вы получаете список функций, которые пользователь попросил вас использовать бережно. Это имеет приятный побочный эффект: если вы ничего конкретного не уважаете, вы можете просто запросить его и использовать как булево значение.

if ( less->of ) {
    ...
}
else {
    ...
}

ОГРАНИЧЕНИЯ

Это, вероятно, ничего не делает.
Это работает только на 5.10+

По крайней мере, оно обратно совместимо, ничего не делая.

© 1993–2020 Larry Wall and others
Licensed under the GNU General Public License version 1 or later, or the Artistic License.
The Perl logo is a trademark of the Perl Foundation.
https://perldoc.perl.org/5.30.3/less

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API