Class VulkanPipelineShaderStageCreateInfo.Builder
java.lang.Object
com.io7m.jcoronado.api.VulkanPipelineShaderStageCreateInfo.Builder
- Enclosing class:
VulkanPipelineShaderStageCreateInfo
Builds instances of type
VulkanPipelineShaderStageCreateInfo.
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 TypeMethodDescriptionAdds elements toflagsset.Adds one element toflagsset.addFlags(VulkanPipelineShaderStageCreateFlag... elements) Adds elements toflagsset.build()Builds a newVulkanPipelineShaderStageCreateInfo.from(VulkanPipelineShaderStageCreateInfoType instance) Fill a builder with attribute values from the providedVulkanPipelineShaderStageCreateInfoTypeinstance.setFlags(Iterable<VulkanPipelineShaderStageCreateFlag> elements) Sets or replaces all elements forflagsset.setModule(VulkanShaderModuleType module) Initializes the value for themoduleattribute.setShaderEntryPoint(String shaderEntryPoint) Initializes the value for theshaderEntryPointattribute.setSpecializationInfo(VulkanSpecializationMap specializationInfo) Initializes the optional valuespecializationInfoto specializationInfo.setSpecializationInfo(Optional<? extends VulkanSpecializationMap> specializationInfo) Initializes the optional valuespecializationInfoto specializationInfo.setStage(VulkanShaderStageFlag stage) Initializes the value for thestageattribute.
-
Method Details
-
from
public final VulkanPipelineShaderStageCreateInfo.Builder from(VulkanPipelineShaderStageCreateInfoType instance) Fill a builder with attribute values from the providedVulkanPipelineShaderStageCreateInfoTypeinstance. 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
-
addFlags
public final VulkanPipelineShaderStageCreateInfo.Builder addFlags(VulkanPipelineShaderStageCreateFlag element) Adds one element toflagsset.- Parameters:
element- A flags element- Returns:
thisbuilder for use in a chained invocation
-
addFlags
public final VulkanPipelineShaderStageCreateInfo.Builder addFlags(VulkanPipelineShaderStageCreateFlag... elements) Adds elements toflagsset.- Parameters:
elements- An array of flags elements- Returns:
thisbuilder for use in a chained invocation
-
setFlags
public final VulkanPipelineShaderStageCreateInfo.Builder setFlags(Iterable<VulkanPipelineShaderStageCreateFlag> elements) Sets or replaces all elements forflagsset.- Parameters:
elements- An iterable of flags elements- Returns:
thisbuilder for use in a chained invocation
-
addAllFlags
public final VulkanPipelineShaderStageCreateInfo.Builder addAllFlags(Iterable<VulkanPipelineShaderStageCreateFlag> elements) Adds elements toflagsset.- Parameters:
elements- An iterable of flags elements- Returns:
thisbuilder for use in a chained invocation
-
setStage
Initializes the value for thestageattribute.- Parameters:
stage- The value for stage- Returns:
thisbuilder for use in a chained invocation
-
setModule
Initializes the value for themoduleattribute.- Parameters:
module- The value for module- Returns:
thisbuilder for use in a chained invocation
-
setShaderEntryPoint
public final VulkanPipelineShaderStageCreateInfo.Builder setShaderEntryPoint(String shaderEntryPoint) Initializes the value for theshaderEntryPointattribute.- Parameters:
shaderEntryPoint- The value for shaderEntryPoint- Returns:
thisbuilder for use in a chained invocation
-
setSpecializationInfo
public final VulkanPipelineShaderStageCreateInfo.Builder setSpecializationInfo(VulkanSpecializationMap specializationInfo) Initializes the optional valuespecializationInfoto specializationInfo.- Parameters:
specializationInfo- The value for specializationInfo- Returns:
thisbuilder for chained invocation
-
setSpecializationInfo
public final VulkanPipelineShaderStageCreateInfo.Builder setSpecializationInfo(Optional<? extends VulkanSpecializationMap> specializationInfo) Initializes the optional valuespecializationInfoto specializationInfo.- Parameters:
specializationInfo- The value for specializationInfo- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newVulkanPipelineShaderStageCreateInfo.- Returns:
- An immutable instance of VulkanPipelineShaderStageCreateInfo
- Throws:
IllegalStateException- if any required attributes are missing
-