Append (procedimiento de concatenación de ristras de tamaño limitado o dinámico)

Explicación

El procedimiento Append devuelve, en el parámetro Source, la ristra resultante de concatenar los parámetros Source y New_Item.

Para las ristras de tamaño limitado, el parámetro Drop indica qué hacer si la ristra resultante es mayor que el tamaño máximo permitido. Puede tomar los valores, declarados en Ada.Strings: Error (lanza la excepción Strings.Length_Error), Left (trunca el extremo izquierdo) o Right (trunca el extremo derecho).

Sintaxis

procedure Append (Source   : in out Bounded_String;
                  New_Item : in String_Bounded_o_Carácter;
                  Drop     : in Truncation := Error);

String_Bounded_o_Carácter ::= Bounded_String | String | Character
procedure Append (Source   : in out Unbounded_String;
                  New_Item : in String_Unbounded_o_Carácter);

String_Unbounded_o_Carácter ::= Unbounded_String | String | Character

Ejemplo

-- En Ada.Strings están definidas algunas constantes
-- como Error, Left y Right.
with Ada.Strings; use Ada.Strings
with Ada.Strings.Bounded;   --  Librería de ristras de tamaño limitado
...
package Str10 is new Ada.Strings.Bounded.Generic_Bounded_Length(10); use Str10;  
...
SL1, SL2: Str10.Bounded_String;
...
SL1 := To_Bounded_String("Alfa"); --  SL1 = "Alfa"
SL2 := To_Bounded_String("beto"); --  SL2 = "beto"

Append(SL1, SL2);          --  SL1 = "Alfabeto"
Append(SL1, SL2);          --  ¡ERROR!
Append(SL1, SL2, Right);   --  SL2 = "Alfabetobe"
Créditos