Index

Package: Strings

Description

package Values.Strings is
Copyright (c) 2012-2013 Kevin Wellwood All rights reserved. This source code is distributed under the Modified BSD License. For terms and conditions, see license.txt.

Classes

String_Value

type String_Value is new Value with private;

Ancestors:

Primitive operations:

Compare (overriding Values.Compare)
Get_Type (overriding Values.Get_Type)
Value_Input (overriding Values.Value_Input)
Value_Read (overriding Values.Value_Read)
Value_Write (overriding Values.Value_Write)
Values.=."=" (Inherited)
Values.Delete (Inherited)

String_Ptr

type String_Ptr is new Value_Ptr with private;

Ancestors:

Immediate Children:

Primitive operations:

Values.<."<" (Inherited)
Values.<=."<=" (Inherited)
Values.=."=" (Inherited)
Values.>.">" (Inherited)
Values.>=.">=" (Inherited)
Values.Adjust (Inherited)
Values.Clone (Inherited)
Values.Finalize (Inherited)
Values.Get (Inherited)
Values.Set (Inherited)
Values.To_Ptr (Inherited)
Values.Value_Ptr (Inherited)
Values.Value_Ptr_Input (Inherited)
Values.Value_Ptr_Output (Inherited)
Values.Value_Ptr_Read (Inherited)
Values.Value_Ptr_Write (Inherited)

Constants & Global variables

Subprograms & Entries

Create

function Create
( val: String ) return String_Ptr;
Constructors

Create

function Create
( val: Unbounded_String ) return String_Ptr;

Clone

function Clone
( this: access String_Value ) return Value_Ptr'Class;

Compare

function Compare
( this: String_Value;
other: Value'Class ) return Integer;

Get_Type

function Get_Type
( this: String_Value ) return Value_Type;

Image

function Image
( this: String_Value ) return String;

Length

function Length
( this: String_Value ) return Natural;

To_String

function To_String
( this: String_Value ) return String;

"&"

function "&"
( l, r: String_Value ) return String_Ptr'Class;
String operators

As_String

function As_String
( ptr: Value_Ptr'Class ) return String_Ptr;
Casts a Value_Ptr down to a String_Value. Returns Nul on failure.

As_Value

function As_Value
( this: String_Ptr ) return Value_Ptr;
Casts a String_Value up to a Value_Ptr.

Get

function Get
( this: String_Ptr ) return access String_Value'Class;
Returns an access to the String_Value, or null if no target.

"&"

function "&"
( l, r: String_Ptr ) return String_Ptr;
The following string operators are equivalent to "l.Get [op] r.Get" Both 'l' and 'r' must have targets or the behavior is undefined.

"="

function  "="
( l: String_Ptr;
r: String ) return Boolean;
The following operators are useful for mixing String_Ptrs with primitive string types. Equivalent to: "l [op] Create( r )" or "Create( r ) [op] l"

"="

function  "="
( l: String_Ptr;
r: Unbounded_String ) return Boolean;

"<"

function  "<"
( l: String_Ptr;
r: String ) return Boolean;

"<"

function  "<"
( l: String_Ptr;
r: Unbounded_String ) return Boolean;

">"

function  ">"
( l: String_Ptr;
r: String ) return Boolean;

">"

function  ">"
( l: String_Ptr;
r: Unbounded_String ) return Boolean;

"<="

function "<="
( l: String_Ptr;
r: String ) return Boolean;

"<="

function "<="
( l: String_Ptr;
r: Unbounded_String ) return Boolean;

">="

function ">="
( l: String_Ptr;
r: String ) return Boolean;

">="

function ">="
( l: String_Ptr;
r: Unbounded_String ) return Boolean;

"&"

function "&"
( l: String_Ptr;
r: String ) return String_Ptr;

"&"

function "&"
( l: String_Ptr;
r: Unbounded_String ) return String_Ptr;

"="

function  "="
( l: String;
r: String_Ptr ) return Boolean;

"="

function  "="
( l: Unbounded_String;
r: String_Ptr ) return Boolean;

"<"

function  "<"
( l: String;
r: String_Ptr ) return Boolean;

"<"

function  "<"
( l: Unbounded_String;
r: String_Ptr ) return Boolean;

">"

function  ">"
( l: String;
r: String_Ptr ) return Boolean;

">"

function  ">"
( l: Unbounded_String;
r: String_Ptr ) return Boolean;

"<="

function "<="
( l: String;
r: String_Ptr ) return Boolean;

"<="

function "<="
( l: Unbounded_String;
r: String_Ptr ) return Boolean;

">="

function ">="
( l: String;
r: String_Ptr ) return Boolean;

">="

function ">="
( l: Unbounded_String;
r: String_Ptr ) return Boolean;

"&"

function "&"
( l: String;
r: String_Ptr ) return String_Ptr;

"&"

function "&"
( l: Unbounded_String;
r: String_Ptr ) return String_Ptr;

Escape

function Escape
( str: String ) return String;
Escapes special characters in a string with backslash notation. Tab => \t LF => \n CR => \r \ => \\ " => \"