# Class VulkanDebugUtilsMessengerCallbackDataEXT.Builder

java.lang.Object
com.io7m.jcoronado.extensions.ext_debug_utils.api.VulkanDebugUtilsMessengerCallbackDataEXT.Builder

Enclosing class:
  `VulkanDebugUtilsMessengerCallbackDataEXT`

public static final class VulkanDebugUtilsMessengerCallbackDataEXT.Builder extends Object
Builds instances of type `VulkanDebugUtilsMessengerCallbackDataEXT`. 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 Type
  Method
  Description
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addAllCommandBufferLabels(Iterable<? extends VulkanDebugUtilsLabelEXT> elements)`
  Adds elements to `commandBufferLabels` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addAllFlags(Iterable<VulkanDebugUtilsMessengerCreateFlag> elements)`
  Adds elements to `flags` set.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addAllObjects(Iterable<? extends VulkanDebugUtilsObjectNameInfoEXT> elements)`
  Adds elements to `objects` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addAllQueueLabels(Iterable<? extends VulkanDebugUtilsLabelEXT> elements)`
  Adds elements to `queueLabels` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addCommandBufferLabels(VulkanDebugUtilsLabelEXT element)`
  Adds one element to `commandBufferLabels` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addCommandBufferLabels(VulkanDebugUtilsLabelEXT... elements)`
  Adds elements to `commandBufferLabels` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addFlags(VulkanDebugUtilsMessengerCreateFlag element)`
  Adds one element to `flags` set.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addFlags(VulkanDebugUtilsMessengerCreateFlag... elements)`
  Adds elements to `flags` set.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addObjects(VulkanDebugUtilsObjectNameInfoEXT element)`
  Adds one element to `objects` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addObjects(VulkanDebugUtilsObjectNameInfoEXT... elements)`
  Adds elements to `objects` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addQueueLabels(VulkanDebugUtilsLabelEXT element)`
  Adds one element to `queueLabels` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `addQueueLabels(VulkanDebugUtilsLabelEXT... elements)`
  Adds elements to `queueLabels` list.
  `VulkanDebugUtilsMessengerCallbackDataEXT`
  `build()`
  Builds a new `VulkanDebugUtilsMessengerCallbackDataEXT`.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `from(VulkanDebugUtilsMessengerCallbackDataEXTType instance)`
  Fill a builder with attribute values from the provided `VulkanDebugUtilsMessengerCallbackDataEXTType` instance.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `setCommandBufferLabels(Iterable<? extends VulkanDebugUtilsLabelEXT> elements)`
  Sets or replaces all elements for `commandBufferLabels` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `setFlags(Iterable<VulkanDebugUtilsMessengerCreateFlag> elements)`
  Sets or replaces all elements for `flags` set.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `setMessage(String message)`
  Initializes the value for the `message` attribute.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `setMessageIdName(String messageIdName)`
  Initializes the value for the `messageIdName` attribute.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `setMessageIdNumber(int messageIdNumber)`
  Initializes the value for the `messageIdNumber` attribute.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `setObjects(Iterable<? extends VulkanDebugUtilsObjectNameInfoEXT> elements)`
  Sets or replaces all elements for `objects` list.
  `final VulkanDebugUtilsMessengerCallbackDataEXT.Builder`
  `setQueueLabels(Iterable<? extends VulkanDebugUtilsLabelEXT> elements)`
  Sets or replaces all elements for `queueLabels` list.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### from

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder from(VulkanDebugUtilsMessengerCallbackDataEXTType instance)
    Fill a builder with attribute values from the provided `VulkanDebugUtilsMessengerCallbackDataEXTType` 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

  - ### addFlags

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addFlags(VulkanDebugUtilsMessengerCreateFlag element)
    Adds one element to `flags` set.
    Parameters:
      `element` - A flags element
    Returns:
      `this` builder for use in a chained invocation

  - ### addFlags

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addFlags(VulkanDebugUtilsMessengerCreateFlag... elements)
    Adds elements to `flags` set.
    Parameters:
      `elements` - An array of flags elements
    Returns:
      `this` builder for use in a chained invocation

  - ### setFlags

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder setFlags(Iterable<VulkanDebugUtilsMessengerCreateFlag> elements)
    Sets or replaces all elements for `flags` set.
    Parameters:
      `elements` - An iterable of flags elements
    Returns:
      `this` builder for use in a chained invocation

  - ### addAllFlags

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addAllFlags(Iterable<VulkanDebugUtilsMessengerCreateFlag> elements)
    Adds elements to `flags` set.
    Parameters:
      `elements` - An iterable of flags elements
    Returns:
      `this` builder for use in a chained invocation

  - ### setMessageIdName

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder setMessageIdName(String messageIdName)
    Initializes the value for the `messageIdName` attribute.
    Parameters:
      `messageIdName` - The value for messageIdName
    Returns:
      `this` builder for use in a chained invocation

  - ### setMessageIdNumber

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder setMessageIdNumber(int messageIdNumber)
    Initializes the value for the `messageIdNumber` attribute.
    Parameters:
      `messageIdNumber` - The value for messageIdNumber
    Returns:
      `this` builder for use in a chained invocation

  - ### setMessage

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder setMessage(String message)
    Initializes the value for the `message` attribute.
    Parameters:
      `message` - The value for message
    Returns:
      `this` builder for use in a chained invocation

  - ### addQueueLabels

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addQueueLabels(VulkanDebugUtilsLabelEXT element)
    Adds one element to `queueLabels` list.
    Parameters:
      `element` - A queueLabels element
    Returns:
      `this` builder for use in a chained invocation

  - ### addQueueLabels

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addQueueLabels(VulkanDebugUtilsLabelEXT... elements)
    Adds elements to `queueLabels` list.
    Parameters:
      `elements` - An array of queueLabels elements
    Returns:
      `this` builder for use in a chained invocation

  - ### setQueueLabels

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder setQueueLabels(Iterable<? extends VulkanDebugUtilsLabelEXT> elements)
    Sets or replaces all elements for `queueLabels` list.
    Parameters:
      `elements` - An iterable of queueLabels elements
    Returns:
      `this` builder for use in a chained invocation

  - ### addAllQueueLabels

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addAllQueueLabels(Iterable<? extends VulkanDebugUtilsLabelEXT> elements)
    Adds elements to `queueLabels` list.
    Parameters:
      `elements` - An iterable of queueLabels elements
    Returns:
      `this` builder for use in a chained invocation

  - ### addCommandBufferLabels

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addCommandBufferLabels(VulkanDebugUtilsLabelEXT element)
    Adds one element to `commandBufferLabels` list.
    Parameters:
      `element` - A commandBufferLabels element
    Returns:
      `this` builder for use in a chained invocation

  - ### addCommandBufferLabels

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addCommandBufferLabels(VulkanDebugUtilsLabelEXT... elements)
    Adds elements to `commandBufferLabels` list.
    Parameters:
      `elements` - An array of commandBufferLabels elements
    Returns:
      `this` builder for use in a chained invocation

  - ### setCommandBufferLabels

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder setCommandBufferLabels(Iterable<? extends VulkanDebugUtilsLabelEXT> elements)
    Sets or replaces all elements for `commandBufferLabels` list.
    Parameters:
      `elements` - An iterable of commandBufferLabels elements
    Returns:
      `this` builder for use in a chained invocation

  - ### addAllCommandBufferLabels

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addAllCommandBufferLabels(Iterable<? extends VulkanDebugUtilsLabelEXT> elements)
    Adds elements to `commandBufferLabels` list.
    Parameters:
      `elements` - An iterable of commandBufferLabels elements
    Returns:
      `this` builder for use in a chained invocation

  - ### addObjects

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addObjects(VulkanDebugUtilsObjectNameInfoEXT element)
    Adds one element to `objects` list.
    Parameters:
      `element` - A objects element
    Returns:
      `this` builder for use in a chained invocation

  - ### addObjects

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addObjects(VulkanDebugUtilsObjectNameInfoEXT... elements)
    Adds elements to `objects` list.
    Parameters:
      `elements` - An array of objects elements
    Returns:
      `this` builder for use in a chained invocation

  - ### setObjects

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder setObjects(Iterable<? extends VulkanDebugUtilsObjectNameInfoEXT> elements)
    Sets or replaces all elements for `objects` list.
    Parameters:
      `elements` - An iterable of objects elements
    Returns:
      `this` builder for use in a chained invocation

  - ### addAllObjects

    public final VulkanDebugUtilsMessengerCallbackDataEXT.Builder addAllObjects(Iterable<? extends VulkanDebugUtilsObjectNameInfoEXT> elements)
    Adds elements to `objects` list.
    Parameters:
      `elements` - An iterable of objects elements
    Returns:
      `this` builder for use in a chained invocation

  - ### build

    public VulkanDebugUtilsMessengerCallbackDataEXT build()
    Builds a new `VulkanDebugUtilsMessengerCallbackDataEXT`.
    Returns:
      An immutable instance of VulkanDebugUtilsMessengerCallbackDataEXT
    Throws:
      `IllegalStateException` - if any required attributes are missing