summaryrefslogtreecommitdiff
path: root/gcc/ada/a-cfdlli.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-02 09:46:08 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-02 09:46:08 +0000
commit4a3ade652da8276a8249df55677f56eda9246b6f (patch)
tree7565c6dfc947d8f0a5501798efa5d1258d38e9ef /gcc/ada/a-cfdlli.ads
parent8398ba2ca240874953d4838e7c0f9aba7a164359 (diff)
downloadgcc-4a3ade652da8276a8249df55677f56eda9246b6f.tar.gz
2011-08-02 Claire Dross <dross@adacore.com>
* a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads, a-cofove.ads: Add comments. 2011-08-02 Yannick Moy <moy@adacore.com> * gnat_rm.texi: Document formal containers. 2011-08-02 Emmanuel Briot <briot@adacore.com> * g-comlin.adb (Goto_Section, Getopt): fix handling of "*" when there are empty sections. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177111 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/a-cfdlli.ads')
-rw-r--r--gcc/ada/a-cfdlli.ads24
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc/ada/a-cfdlli.ads b/gcc/ada/a-cfdlli.ads
index af64ea35f8b..526410c3b79 100644
--- a/gcc/ada/a-cfdlli.ads
+++ b/gcc/ada/a-cfdlli.ads
@@ -29,6 +29,30 @@
-- <http://www.gnu.org/licenses/>. --
------------------------------------------------------------------------------
+-- The specification of this package is derived from the specification
+-- of package Ada.Containers.Bounded_Doubly_Linked_Lists in the Ada 2012 RM.
+-- The changes are
+
+-- A parameter for the container is added to every function reading the
+-- content of a container: Element, Next, Previous, Query_Element,
+-- Has_Element, Iterate, Reverse_Iterate. This change is motivated by the
+-- need to have cursors which are valid on different containers (typically
+-- a container C and its previous version C'Old) for expressing properties,
+-- which is not possible if cursors encapsulate an access to the underlying
+-- container.
+
+-- There are two new functions
+
+-- function Left (Container : List; Position : Cursor) return List;
+-- function Right (Container : List; Position : Cursor) return List;
+
+-- Left returns a container containing all elements preceding Position
+-- (excluded) in Container. Right returns a container containing all
+-- elements following Position (included) in Container. These two new
+-- functions are useful to express invariant properties in loops which
+-- iterate over containers. Left returns the part of the container already
+-- scanned and Right the part not scanned yet.
+
private with Ada.Streams;
with Ada.Containers; use Ada.Containers;