Class VulkanMemoryHeap.Builder
java.lang.Object
com.io7m.jcoronado.api.VulkanMemoryHeap.Builder
- Enclosing class:
VulkanMemoryHeap
Builds instances of type
VulkanMemoryHeap.
Initialize attributes and then invoke the build() method to create an
immutable instance.
Builder is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
-
Method Summary
Modifier and TypeMethodDescriptionfinal VulkanMemoryHeap.BuilderaddAllFlags(Iterable<VulkanMemoryHeapFlag> elements) Adds elements toflagsset.final VulkanMemoryHeap.BuilderaddFlags(VulkanMemoryHeapFlag element) Adds one element toflagsset.final VulkanMemoryHeap.BuilderaddFlags(VulkanMemoryHeapFlag... elements) Adds elements toflagsset.build()Builds a newVulkanMemoryHeap.final VulkanMemoryHeap.Builderfrom(VulkanMemoryHeapType instance) Fill a builder with attribute values from the providedVulkanMemoryHeapTypeinstance.final VulkanMemoryHeap.BuildersetFlags(Iterable<VulkanMemoryHeapFlag> elements) Sets or replaces all elements forflagsset.final VulkanMemoryHeap.BuildersetIndex(VulkanMemoryHeapIndex index) Initializes the value for theindexattribute.final VulkanMemoryHeap.BuildersetSize(long size) Initializes the value for thesizeattribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedVulkanMemoryHeapTypeinstance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
setIndex
Initializes the value for theindexattribute.- Parameters:
index- The value for index- Returns:
thisbuilder for use in a chained invocation
-
setSize
Initializes the value for thesizeattribute.- Parameters:
size- The value for size- Returns:
thisbuilder for use in a chained invocation
-
addFlags
Adds one element toflagsset.- Parameters:
element- A flags element- Returns:
thisbuilder for use in a chained invocation
-
addFlags
Adds elements toflagsset.- Parameters:
elements- An array of flags elements- Returns:
thisbuilder for use in a chained invocation
-
setFlags
Sets or replaces all elements forflagsset.- Parameters:
elements- An iterable of flags elements- Returns:
thisbuilder for use in a chained invocation
-
addAllFlags
Adds elements toflagsset.- Parameters:
elements- An iterable of flags elements- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newVulkanMemoryHeap.- Returns:
- An immutable instance of VulkanMemoryHeap
- Throws:
IllegalStateException- if any required attributes are missing
-