Mercurial > pub > Impl
comparison Lib/IMPL/template.pm @ 180:d1676be8afcc
Перекодировка в utf-8
| author | sourcer |
|---|---|
| date | Fri, 30 Dec 2011 23:40:00 +0300 |
| parents | 1f7a6d762394 |
| children | ae8072f2f2a3 |
comparison
equal
deleted
inserted
replaced
| 179:b3d91ff7aea9 | 180:d1676be8afcc |
|---|---|
| 49 | 49 |
| 50 =pod | 50 =pod |
| 51 | 51 |
| 52 =head1 NAME | 52 =head1 NAME |
| 53 | 53 |
| 54 C<IMPL::template> . | 54 C<IMPL::template> директива для объявления шаблона. |
| 55 | 55 |
| 56 =head1 SYNPOSIS | 56 =head1 SYNPOSIS |
| 57 | 57 |
| 58 =begin code | 58 =begin code |
| 59 | 59 |
| 108 | 108 |
| 109 =end code | 109 =end code |
| 110 | 110 |
| 111 =head1 DESCRIPTION | 111 =head1 DESCRIPTION |
| 112 | 112 |
| 113 . | 113 Шаблоны используются для динамической генерации классов. Процесс создания класса |
| 114 , : | 114 по шаблону называется специализацией, при этом создается новый класс: |
| 115 | 115 |
| 116 =over | 116 =over |
| 117 | 117 |
| 118 =item 1 | 118 =item 1 |
| 119 | 119 |
| 120 , | 120 Обявляется новый пакет с именем, вычисленным из имени и параметров шаблона |
| 121 | 121 |
| 122 =item 2 | 122 =item 2 |
| 123 | 123 |
| 124 C<@ISA> , | 124 Формируется массив C<@ISA> для созаднного класса, в который добавляется имя шаблона |
| 125 | 125 |
| 126 =item 3 | 126 =item 3 |
| 127 | 127 |
| 128 , | 128 Формируются методы с именами параметров шаблона, возвращающие реальные значения параметров |
| 129 | 129 |
| 130 =item 4 | 130 =item 4 |
| 131 | 131 |
| 132 | 132 Вызывается метод для конструирования специализиции |
| 133 | 133 |
| 134 =back | 134 =back |
| 135 | 135 |
| 136 =head1 MEMBERS | 136 =head1 MEMBERS |
| 137 | 137 |
| 138 =over | 138 =over |
| 139 | 139 |
| 140 =item C<spec(@params)> | 140 =item C<spec(@params)> |
| 141 | 141 |
| 142 , . . | 142 Метод, создающий специализацию шаблона. Может быть вызван как оператор. |
| 143 | 143 |
| 144 =back | 144 =back |
| 145 | 145 |
| 146 =cut | 146 =cut |
