El Macro de Instrucción de Procesamiento (PI) [Guía de Usuario de Enterprise Architect]

Top Previous Next

El Macro de Instrucción de Procesamiento (PI)

button_main button_prev button_next

El macro PI (Instrucción de Procesamiento) proporciona medios para definir el texto separador para ser insertado entre las piezas de código (las cuales representan entidades) que son generadas utilizando una plantilla.

La estructura para configurar la Instrucción de Procesamiento es:

%PI=<value>%

 

donde <value> es una cadena literal encapsulada por comillas dobles, con las siguientes opciones:

"\n" - Nueva línea (la predeterminada)

" " - Espacio

"\t" - Tabulación

"" - Nulo

 

De manera predeterminada, PI es configurado para generar una nueva línea (\n) para cada sustitución no-vacía, que comportamiento puede ser cambiado al volver a configurar el macro PI . Por ejemplo, la declaración de Atributos de una Clase en simple código VB se generaría a un único estado de línea (sin nuevas líneas). Estas propiedades son derivadas de las Propiedades de Atributo de Clase en el modelo a generar, por ejemplo:

 

Private Const PrintFormat As String = "Portrait"

 

La plantilla para generar esto comienza con PI siendo configurado a un espacio en lugar de a una nueva línea:

%PI=" "%

%CONVERT_SCOPE(attScope)%

%endIf%

%if attConst == "T"%

Const

%endIf%

 

 

Al transformar esto, attscope devuelve la palabra clave VB “Private” y attConst devuelve “Const” en la misma línea espaciada con un único espacio (ajustando el ejemplo de definición de Clase.Atributo VB de arriba).

Alternativamente, al generar una Clase puede que quiera la declaración de Clase, las notas y cuerpo de Clase todos separados por líneas dobles. En este caso %PI está configurado a "/n/n" para devolver espaciado de línea doble:

%PI="\n\n"%

%ClassDeclaration%

%ClassNotes%

%ClassBody%

 

Características PI:

Las líneas en blanco no tienen ningún efecto en la salida

Cualquier línea que tiene un macro que produce un resultado vacío en un separador PI (espacio/nueva línea)

La última entrada no devuelve un PI; por ejemplo, %Classbody% (arriba) no tiene una línea doble agregada después del cuerpo

Aprender más

Macros de Función