- java.lang.Object
-
- com.io7m.jcoronado.api.VulkanMemoryHeap.Builder
-
- Enclosing class:
- VulkanMemoryHeap
public static final class VulkanMemoryHeap.Builder extends java.lang.Object
Builds instances of typeVulkanMemoryHeap
. Initialize attributes and then invoke thebuild()
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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VulkanMemoryHeap.Builder
addAllFlags(java.lang.Iterable<VulkanMemoryHeapFlag> elements)
Adds elements toflags
set.VulkanMemoryHeap.Builder
addFlags(VulkanMemoryHeapFlag element)
Adds one element toflags
set.VulkanMemoryHeap.Builder
addFlags(VulkanMemoryHeapFlag... elements)
Adds elements toflags
set.VulkanMemoryHeap
build()
Builds a newVulkanMemoryHeap
.VulkanMemoryHeap.Builder
from(VulkanMemoryHeapType instance)
Fill a builder with attribute values from the providedVulkanMemoryHeapType
instance.VulkanMemoryHeap.Builder
setFlags(java.lang.Iterable<VulkanMemoryHeapFlag> elements)
Sets or replaces all elements forflags
set.VulkanMemoryHeap.Builder
setSize(long size)
Initializes the value for thesize
attribute.
-
-
-
Method Detail
-
from
public final VulkanMemoryHeap.Builder from(VulkanMemoryHeapType instance)
Fill a builder with attribute values from the providedVulkanMemoryHeapType
instance. 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:
this
builder for use in a chained invocation
-
setSize
public final VulkanMemoryHeap.Builder setSize(long size)
Initializes the value for thesize
attribute.- Parameters:
size
- The value for size- Returns:
this
builder for use in a chained invocation
-
addFlags
public final VulkanMemoryHeap.Builder addFlags(VulkanMemoryHeapFlag element)
Adds one element toflags
set.- Parameters:
element
- A flags element- Returns:
this
builder for use in a chained invocation
-
addFlags
public final VulkanMemoryHeap.Builder addFlags(VulkanMemoryHeapFlag... elements)
Adds elements toflags
set.- Parameters:
elements
- An array of flags elements- Returns:
this
builder for use in a chained invocation
-
setFlags
public final VulkanMemoryHeap.Builder setFlags(java.lang.Iterable<VulkanMemoryHeapFlag> elements)
Sets or replaces all elements forflags
set.- Parameters:
elements
- An iterable of flags elements- Returns:
this
builder for use in a chained invocation
-
addAllFlags
public final VulkanMemoryHeap.Builder addAllFlags(java.lang.Iterable<VulkanMemoryHeapFlag> elements)
Adds elements toflags
set.- Parameters:
elements
- An iterable of flags elements- Returns:
this
builder for use in a chained invocation
-
build
public VulkanMemoryHeap build()
Builds a newVulkanMemoryHeap
.- Returns:
- An immutable instance of VulkanMemoryHeap
- Throws:
java.lang.IllegalStateException
- if any required attributes are missing
-
-