| ------------------------------------------------------------------------------ |
| -- -- |
| -- GNAT RUN-TIME COMPONENTS -- |
| -- -- |
| -- A D A . E N V I R O N M E N T _ V A R I A B L E S -- |
| -- -- |
| -- S p e c -- |
| -- -- |
| -- Copyright (C) 2005-2006, Free Software Foundation, Inc. -- |
| -- -- |
| -- This specification is adapted from the Ada Reference Manual for use with -- |
| -- GNAT. In accordance with the copyright of that document, you can freely -- |
| -- copy and modify this specification, provided that if you redistribute a -- |
| -- modified version, any changes that you have made are clearly indicated. -- |
| --- -- |
| ------------------------------------------------------------------------------ |
| |
| package Ada.Environment_Variables is |
| pragma Preelaborate (Environment_Variables); |
| |
| function Value (Name : String) return String; |
| -- If the external execution environment supports environment variables, |
| -- then Value returns the value of the environment variable with the given |
| -- name. If no environment variable with the given name exists, then |
| -- Constraint_Error is propagated. If the execution environment does not |
| -- support environment variables, then Program_Error is propagated. |
| |
| function Exists (Name : String) return Boolean; |
| -- If the external execution environment supports environment variables and |
| -- an environment variable with the given name currently exists, then |
| -- Exists returns True; otherwise it returns False. |
| |
| procedure Set (Name : String; Value : String); |
| -- If the external execution environment supports environment variables, |
| -- then Set first clears any existing environment variable with the given |
| -- name, and then defines a single new environment variable with the given |
| -- name and value. Otherwise Program_Error is propagated. |
| -- If implementation-defined circumstances prohibit the definition of an |
| -- environment variable with the given name and value, then |
| -- Constraint_Error is propagated. |
| -- It is implementation defined whether there exist values for which the |
| -- call Set(Name, Value) has the same effect as Clear (Name). |
| |
| procedure Clear (Name : String); |
| -- If the external execution environment supports environment variables, |
| -- then Clear deletes all existing environment variables with the given |
| -- name. Otherwise Program_Error is propagated. |
| |
| procedure Clear; |
| -- If the external execution environment supports environment variables, |
| -- then Clear deletes all existing environment variables. Otherwise |
| -- Program_Error is propagated. |
| |
| procedure Iterate |
| (Process : not null access procedure (Name, Value : String)); |
| -- If the external execution environment supports environment variables, |
| -- then Iterate calls the subprogram designated by Process for each |
| -- existing environment variable, passing the name and value of that |
| -- environment variable. Otherwise Program_Error is propagated. |
| |
| end Ada.Environment_Variables; |