ADDED src/natools-storage_pools.ads Index: src/natools-storage_pools.ads ================================================================== --- src/natools-storage_pools.ads +++ src/natools-storage_pools.ads @@ -0,0 +1,27 @@ +------------------------------------------------------------------------------ +-- Copyright (c) 2014, Natacha Porté -- +-- -- +-- Permission to use, copy, modify, and distribute this software for any -- +-- purpose with or without fee is hereby granted, provided that the above -- +-- copyright notice and this permission notice appear in all copies. -- +-- -- +-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -- +-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -- +-- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -- +-- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -- +-- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -- +-- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -- +-- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -- +------------------------------------------------------------------------------ + +------------------------------------------------------------------------------ +-- Natools.Storage_Pools provides stuff related to storage pools. Currently -- +-- that means only a dummy access type to reach the default storage pool. -- +------------------------------------------------------------------------------ + +package Natools.Storage_Pools is + pragma Preelaborate (Storage_Pools); + + type Access_In_Default_Pool is access Boolean; + +end Natools.Storage_Pools; Index: src/natools-string_slices.ads ================================================================== --- src/natools-string_slices.ads +++ src/natools-string_slices.ads @@ -18,10 +18,11 @@ -- Natools.String_Slices provide an object that represents a substring of a -- -- shared parent string. -- ------------------------------------------------------------------------------ private with Natools.References; +private with Natools.Storage_Pools; package Natools.String_Slices is pragma Preelaborate (String_Slices); ----------------------- @@ -175,21 +176,18 @@ -- This does not copy parts of S parent string outside of S range. -- Semantically equivalent to (To_Slice (To_String (S))). private - type Access_In_Default_Pool is access Boolean; - -- Access type only used to infer default storage pool - package String_Refs is new References (String, - Access_In_Default_Pool'Storage_Pool, - Access_In_Default_Pool'Storage_Pool); + Storage_Pools.Access_In_Default_Pool'Storage_Pool, + Storage_Pools.Access_In_Default_Pool'Storage_Pool); type Slice is tagged record Bounds : String_Range := (1, 0); Ref : String_Refs.Reference; end record; Null_Slice : constant Slice := ((1, 0), Ref => <>); end Natools.String_Slices;