View source code
							
							
						
								Display the source code in std/experimental/allocator/building_blocks/region.d from which this
								page was generated on github.
							
						
							Report a bug
							
						
								If you spot a problem with this page, click here to create a
								Bugzilla issue.
							
						
							
								Improve this page
							
							
					
								Quickly fork, edit online, and submit a pull request for this page.
								Requires a signed-in GitHub account. This works well for small changes.
								If you'd like to make larger changes you may want to consider using
								local clone.
							
						Struct std.experimental.allocator.building_blocks.region.BorrowedRegion
A BorrowedRegion allocates directly from a user-provided block of memory.
						
				struct BorrowedRegion(uint minAlign = platformAlignment, Flag!("growDownwards") growDownwards = No
				Unlike a Region, a BorrowedRegion does not own the memory it allocates from
and will not deallocate that memory upon destruction. Instead, it is the user's
responsibility to ensure that the memory is properly disposed of.
In all other respects, a BorrowedRegion behaves exactly like a Region.
Constructors
| Name | Description | 
|---|---|
| this(store) | Constructs a region backed by a user-provided store. | 
Methods
| Name | Description | 
|---|---|
| alignedAllocate(n, a) | Allocates nbytes of memory aligned at alignmenta. | 
| allocate(n) | Allocates nbytes of memory. The shortest path involves an alignment
    adjustment (ifalignment > 1), an increment, and a comparison. | 
| allocateAll() | Allocates and returns all memory available to this region. | 
| available() | Nonstandard property that returns bytes available for allocation. | 
| deallocate(b) | Deallocates b. This works only ifbwas obtained as the last call
    toallocate; otherwise (i.e. another allocation has occurred since) it
    does nothing. | 
| deallocateAll() | Deallocates all memory allocated by this region, which can be subsequently reused for new allocations. | 
| empty() | Returns Ternaryif no memory has been allocated in this region,Ternaryotherwise. (Never returnsTernary.) | 
| expand(b, delta) | Expands an allocated block in place. Expansion will succeed only if the
    block is the last allocated. Defined only if growDownwardsisNo. | 
| goodAllocSize(n) | Rounds the given size to a multiple of the alignment | 
| owns(b) | Queries whether bhas been allocated with this region. | 
Aliases
| Name | Description | 
|---|---|
| alignment | Alignment offered. | 
Example
import stdAuthors
License
					Copyright © 1999-2024 by the D Language Foundation | Page generated by ddox.