var capacity: Int
The actual number of elements that can be stored in this object.
このオブジェクトに格納できる要素の実際の数。
var header: Header
The stored
Header
instance.
格納されたHeader
インスタンス。
Header
and raw storage for an array of Element
, whose size is determined at instance creation.
あるクラス、そのインスタンスは型Header
のプロパティと、そのサイズがインスタンス作成時に決められる、Element
配列の生のストレージを含みます。
Availability
Technology
class ManagedBuffer<Header, Element>
Note that the Element
array is suitably-aligned raw memory. You are expected to construct and—if necessary—destroy objects there yourself, using the APIs on Unsafe
. Typical usage stores a count and capacity in Header
and destroys any live elements in the deinit
of a subclass.
Element
配列は、生のメモリに適切に並べられます。あなたは、オブジェクトの組み立てと—必要ならば—破壊をそこであなた自身で、Unsafe
上でAPIを使って行うことを当然期待されます。典型的なやり方は、総数と容量をHeader
に格納して、サブクラスのdeinit
の中のあらゆる生きている要素を破壊します。
Note 注意
Subclasses must not have any stored properties; any storage needed should be included in Header
.
サブクラスは、どんな保存プロパティも持つ必要はありません;必要とされるあらゆるストレージはHeader
の中に含められるべきです。
var capacity: Int
var header: Header
Header
instance.
格納されたHeader
インスタンス。
func withUnsafeMutablePointerToElements <R>((UnsafeMutablePointer<Element>) -> R) -> R
body
with an UnsafeMutablePointer
to the Element
storage.
Element
ストレージへのUnsafeMutablePointer
を使ってbody
を呼び出します。
func withUnsafeMutablePointerToHeader <R>((UnsafeMutablePointer<Header>) -> R) -> R
body
with an UnsafeMutablePointer
to the stored Header
.
この格納Header
へのUnsafeMutablePointer
を使ってbody
を呼び出します。
func withUnsafeMutablePointers <R>((UnsafeMutablePointer<Header>, UnsafeMutablePointer<Element>) -> R) -> R
body
with UnsafeMutablePointer
s to the stored Header
and raw Element
storage.
格納Header
およびElement
生ストレージそれぞれへのUnsafeMutablePointer
を使ってbody
を呼び出します。
class func create(minimumCapacity : Int, makingHeaderWith : (ManagedBuffer<Header, Element>) -> Header) -> ManagedBuffer<Header, Element>
factory
on the partially-constructed object to generate an initial Header
.
最も派生したクラスの新しいインスンタスを作成します、部分的に組み立てられたオブジェクト上でfactory
を呼び出して初期Value
を生成します。
struct ManagedBufferPointer
Header
and contiguous storage for an arbitrary number of Element
instances stored in that buffer.
バッファオブジェクトを収容します、そしてHeader
のインスタンスへのアクセスおよびそのバッファに格納される随意の数のElement
インスタンスの隣接保管を提供します。