411 REFERENCE · Wikibooks
Ada Programming/Attributes/'Value
Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.
Attributes 'Value
__TOC__
Description
The 'Value attribute is defined for any scalar type. This attribute is a function that parses the string and returns the corresponding type value, if it exists. Leading and trailing spaces are trimmed.
function S'Value (Arg: String) return S'Base;
If the string does not correspond to any value of the type, then the Constraint_Error exception is raised.
There are corresponding attributes for Wide_String and Wide_Wide_String.
Don't confuse this attribute with the Ada Programming/Attributes/'Val attribute.
Example
type My_Enum is (Enum1, Enum2, Enum3);
Assert (My_Enum'Value ("ENUM1") = Enum1); OK
Assert (My_Enum'Value (" ENUM1 ") = Enum1); OK
Assert (My_Enum'Value ("ZOWIE!") = Enum1); Wrong! Constraint_Error is raised
See also
Wikibook
Ada Programming
Ada Programming/Attributes
Ada Programming/Attributes/'Image
Ada Reference Manual
13 3 Operational and Representation Attributes
K Language-Defined Attributes
Value