Macros de Función [Guía de Usuario de Enterprise Architect] |
Top Previous Next |
Macros de Función son una manera conveniente de manipular y dar formato varios elementos de datos. Cada macro de función devuelve una cadena de resultado. Hay dos maneras principales de utilizar los resultados de macros de función:
Los macros de función pueden obtener parámetros, los cuales pueden ser pasados a otros macros como:
Múltiples parámetros pasados utilizando una lista separada por comas. Los macros de función son nombrados de acuerdo con el estilo de Todas-Mayúsculas, como en: %CONVERT_SCOPE(opScope)% Los macros de función disponible se describen abajo. Los parámetros son denotados por paréntesis angulares, como en: FUNCTION_NAME(<param>). CONVERT_SCOPE(<umlScope>): Para su uso con lenguajes soportados, para convertir <umlScope> al teclado de alcance apropiado para el lenguaje siendo generado. La siguiente tabla muestra la conversación de <umlScope> con respeto a los lenguajes dados.
COLLECTION_CLASS(<language>): Da la colección de Clase apropiada para el lenguaje especificado para el atributo vinculado actual. CSTYLE_COMMENT(<wrap_length>): Convierte las notas para el elemento actualmente al alcance para comentarios de estilo-C, utilizando /* y */. DELPHI_PROPERTIES(<scope>, <separator>, <indent>): Genera una propiedad Delphi. DELPHI_COMMENT(<wrap_length>): Convierte las notas para el elemento actualmente al alcance a comentarios Delphi. EXEC_ADD_IN(<addin_name>, <function_name>, <prm_1>, ..., <prm_n>): Invoca una función de Add-In de Enterprise Architect, la cual puede devolver una cadena de resultado. <addin_name> y <function_name> especifican los nombres del Add-In y función a ser invocados. Los parámetros para las función de Add-In pueden ser especificados a través de parámetros <prm_1> a <prm_n>. $result = %EXEC_ADD_IN("MyAddin","ProcessOperation",classGUID, opGUID)%
Cualquier función que está por ser llamada por el macro EXEC_ADD_IN debe tener dos parámetros: un objeto de EA.Repository, y un arreglo de Variante que contiene cualquier parámetro adicional de la llamada EXEC_ADD_IN. El tipo de retorno debería ser Variante. Public Function ProcessOperation(Repository As EA.Repository, args As Variant) As Variant
FIND(<src>, <subString>): Posición de la primera instancia de <subString> en <src>; -1 si no hay ninguna. GET_ALIGNMENT(): Devuelve una cadena donde todo el texto de la línea actual de salida se convierte en espacios y pestañas. JAVADOC_COMMENT(<wrap_length>): Convierte las notas para el elemento actualmente al alcance a comentarios de estilo-javadoc. LEFT(<src>, <count>): Los primeros caracteres <count> de <src>. LENGTH(<src>): Longitud de <src>. Devuelve una cadena. MID(<src>, <start>) MID(<src>, <start>, <count>): Subcadenas de <src> comenzando en <start> e incluyendo caracteres <count>. Donde <count> está omitido el resto de la cadena está incluida. PI(<option>, <value>, {<option>, <value>}): Configura el PI para la plantilla actual <value>. Los <valores> válidos son:
<opción> controla cuando toma efecto la nueva PI. Valores válidos para <opción> son:
Varios pares de opciones están permitidos en una llamada. Un ejemplo de la situación donde esto sería utilizados donde una palabra clave está siempre en una nueva línea, como se ilustra abajo:
%PI=" "% %classAbstract ? "abstract"% %if classTag:"macro" != ""% %PI("I", "\n", "N", " ")% %classTag:"macro"% %endIf% class %className%
Para más detalles, vea la descripción de PI. PROCESS_END_OBJECT(<template_name>): Permite que las Clases que están una Clase más lejos de la Clase base, para ser transformado en objetos (tal como atributos, operaciones, paquetes, parámetros y columnas) de la Clase base. <template_name> se refiere a la plantilla de trabajo que almacena temporalmente los datos. REMOVE_DUPLICATES(<source>, <separator>): Donde <source> es una lista separada<separator>; esto elimina cualquier duplicado o cadenas vacías. REPLACE(<string>, <old>, <new>): Reemplaza todas las ocurrencias de <old> con <new> en la cadena dada <string>. RESOLVE_OP_NAME(): Resuelve los enfrentamientos en los nombres de interfaces donde dos método de interfaces tienen el mismo nombre. RESOLVE_QUALIFIED_TYPE() RESOLVE_QUALIFIED_TYPE(<separator>) RESOLVE_QUALIFIED_TYPE(<separator>, <default>): Genera un tipo calificado para el atributo actual, atributo vinculado, padre vinculado, operación o parámetro. Permite la especificación de un separador aparte de . y un valor predeterminado para cuando se requiere algún valor. RIGHT(<src>, <count>): Los últimos caracteres <count> de <src>. TO_LOWER(<string>): Convierte <string> a minúscula. TO_UPPER(<string>): Convierte <string> a mayúscula. TRIM(<string>) TRIM(<string>, <trimChars>): Eliminar espacios en blancos dirigidos y arrastrados desde <string>. Si <trimChars> está especificado, todos los caracteres dirigidos y arrastrados en el conjunto de <trimChars> son eliminados. TRIM_LEFT(<string>) TRIM_LEFT(<string>, <trimChars>): Elimina los caracteres dirigidos especificados desde <string>. TRIM_RIGHT(<string>) TRIM_RIGHT(<string>, <trimChars>): Elimina los caracteres arrastrados especificados desde <string>. VB_COMMENT(<wrap_length>): Convierte las notas para el elemento actualmente al alcance a comentarios de estilo Visual Basic. WRAP_COMMENT(<comment>, <wrap_length>, <indent>, <start_string>): Envuelve el texto <comment> con grosor <wrap_length> poniendo <indent> y <start_string> al principio de cada línea.
$behavior = %WRAP_COMMENT(opBehavior, "40", " ", "//")%
<wrap_length> todavía debe ser pasado como una cadena, aunque WRAP_COMMENT trate este parámetro con un entero. WRAP_LINES(<text>, <wrap_length>, <start_string>( , <end_string ) ): Envuelve <text> como designado para ser <wrap_length>, agregando <start_string> al principio de cada línea y <end_string> al final de la línea si está especificado. XML_COMMENT(<wrap_length>): Convierte las notas para el elemento actualmente al alcance a comentarios de estilo - XML. |