Определения функций
- Преобразование трансляции
#( ... )
- Имя производного типа
#derived( $typename )
Совпадает с именем исходного типа
[ $typename ]
- Строковое представление сигнатуры
метода или конструктора
#string_representation ( $method_signature )
Представляет собой строку, получаемую при отбрасывании возможной информации об исключениях и предшествующего ей throws в результате вызова метода toString() в соответствующем данному методу или конструктору reflection-объекте.
Более точно - то, что получается из результата применения toString() к соответствующему объекту класса java.lang.reflect.Method или java.lang.reflect.Constructor, а затем выполнении над полученной строкой операции substring( 0, indexOf(" throws ") ), если indexOf(" throws ") != -1.
- Полное имя типа
#full_name( $typename )
Для базовых типов boolean, char, byte, short, int, long, float, double - в точности имя типа. Для
всех остальных - имя типа, дополеннное спереди именами всех содержащих его
пакетов, в порядке вложенности, через точку.
- Короткое имя типа
Последний идентификатор в полном имени типа.
#short_name( $typename )
- Префикс имени типа
Представляет собой имя типа, от которого отбросили последний идентификатор
с точкой, если она есть.
Т.е., пусто, если имя типа состоит из одного идентификатора, а иначе,
квалифицированный идентификатор, из которого полное имя типа получается
добавлением в конец точки и #short_name( $typename
).
#prefix( $typename )
- Идентификатор, строящийся
по полному имени типа (?????)
#full_identifier ( $typename )
Совпадает #full_name( $typename ), в котором
точки заменены на '_' (?????).
- Инициализационное выражение для типа
#init_expression( $typename )
[
( если $typename = boolean ) ( false )
( если $typename = char ) ( '\0' )
( если $typename = byte, short, int, long, float,
double ) ( 0 )
( если $typename - ссылочный, в т.ч. перечислимый ) ( null )
]
- Преобразование выражения в строку
#slashing ( $expression )
Состоит в замене всех символов " на \".
- Производные спецификационных классов
При отсутствии явно указанного имени интерфейса для метода вся вставка в скобках
()? опускается.
- Имя класса модели класса или класса
медиатора класса
#ClassModel
[ ClassModel
]
Поскольку этот класс и так вложен в класс, производный
от спецификационного, его имя может не зависеть от имени исходного класса.
- Идентификатор предиката
#PID( $predicate )
Это может быть просто номер предиката для данной операции
Или строковое представление предиката в виде логического выражения
- Идентификатор элементарной формулы
#FID( $formula )
Это может быть её номер для данной операции или её строковое представление
в виде логического выражения
- Имя предусловия спецификационной
операции
#precondition ( $operation_signature )
[ _ts_precondition_($operation_name)
]
- Имя анализатора
тестовой ситуации для разбиений
#getPartitionElement ( $operation_signature )
[ _ts_getPartitionElement_($operation_name)
]
- Имя анализатора тестовой
ситуации для покрытий
#getCoverageElement ( $operation_signature )
[ _ts_getCoverageElement_($operation_name)
]
- Имя
вспомогательного метода реализации для спецификационной операции
#implementation ( $operation_signature )
[ _ts_implementation_($operation_name)
]
- Имя оракула
спецификационной операции
#oracle ( $operation_signature )
[ _ts_oracle_($operation_name)
]
- Имя медиатора наследования
#inheritance_mediator ( $operation_signature )
[ _ts_inheritance_mediator_($operation_name)
]
- Имя класса события вызова
#CallEvent ( $method_signature )
[ _TS_Call_($operation_name)_(номер операции среди операций данного класса и предков, без учета перегрузки (можно - с таким же именем, но не обязательно)) ]
- Имя внутреннего поля
#internal_field_name ( $field_identifier )
[ _ts_field_($field_identifier) ]
- Имя метода инициализации данных об операции
#initialize_operation ( $operation_signature )
[ _ts_init_($operation_name)_(номер операции среди операций данного класса и предков, без учета перегрузки (можно - с таким же именем, но не обязательно)) ]
- Имя переключателя вызова спецификационной операции
#switch ( $operation_signature )
[ _ts_switch_($operation_name) ]
- Имя метода синхронизации для спецификационной операции
#update ( $operation_signature )
[ _ts_update_($operation_name) ]
- Имя метода, реализующего проверку инварианта
#generated_invariant_name ( $class_name, $invariant_name )
[ _ts_($class_name)_($invariant_name) ]
- Производные медиаторных классов
- Имя метода создания
медиаторов
#create_mediator ( $type )
[ _ts_create_( $type_short_name ) ]
- Имя
класса медиатора класса
См. имя класса модели класса в производных
спецификационных классов
Поскольку этот класс и так вложен в класс, производный
от медиаторного, его имя может не зависеть от имени исходного класса.
Кроме того, для того, чтобы удобнее было обрабатывать медиаторные классы,
это имя сделано совпадающим с именем
класса модели класса.
- Имя класса-синхронизатора
статических полей
#static_synchronization_manager_name ( $class_name )
Это "#full_name
( $class_name )", если в нем
определен статический метод #mapClassStateDown
( ) или есть static update блок..
Если в $class_name ни блока, ни метода нет, и есть медиаторный класс-предок $base_name, то #static_synchronization_manager_name ( $class_name ) = #static_synchronization_manager_name
( $base_name ).
Если в $class_name ни блока, ни метода нет, и есть спецификационный класс-предок $base_name (упомянутый в интерфейсах для медиатора $class_name), то #static_synchronization_manager_name ( $class_name ) = #static_synchronization_manager_name
( $base_name ).
Если в $class_name ни блока, ни метода нет, и $class_name является спецификационным классом без спецификационных предков, то #static_synchronization_manager_name ( $class_name ) =
null.
- Имя
вспомогательного метода вызова предположительно реализационной операции
#auxiliary_call_method ( $type, $method_signature, ($called_method_exceptions)? )
Генерировать можно любым, обеспечивающим уникальность имени в пределах
данного класса, способом. Напрмер, использовать номера пар (тип, сигнатура) для статических методов, троек (тип, сигнатура, множество типов исключений) для нестатических и номера сигнатур конструкторов для конструкторов.
- Производные сценарных классов
- Номер сценарного метода $method
#number ( $method )
-
Число сценарных методов в классе $class_name
#number ( $class_name )
- Имя сценарного метода с данным
номером $number
#scenario_method ( $number )
- Имя
класса обощенного воздействия для сценарного метода $method
#AbstractAction ( $method )
[ AbstractAction_($method)
]
- Имя метода вычисления очередного воздействия
для сценарного метода $method
#PartialNext ( $method )
[ _ts_partialNext_($method) ]
- Имя метода
выполнения очередного воздействия для сценарного метода $method
#PartialExecute ( $method )
[ _ts_partialExecute_($method) ]
- Результирующий идентификатор
итерационной переменной или переменной обощенного состояния $variable
#identifier ( $variable )
- Идентификатор слеующего
значения итерационной переменной
#next_value ( $variable )
- Номер итерационной переменной
$iteration_variable в рамках сценарного метода
#number ( $iteration_variable )
- Номер переменной обобщенного состояния
$state_variable в рамках сценарного метода
#number ( $state_variable )