%YAML 1.1
---
all_type_descriptions:
  - &td0
    id: 6
    op: 21
    type_name: 
    struct_member_name: "out_value"
    storage_class: 0 # UniformConstant
    type_flags: 0x00000004 # INT 
    decoration_flags: 0x00000000 # NONE
    traits:
      numeric:
        scalar: { width: 32, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 0
    members:
  - &td1
    id: 15
    op: 30
    type_name: "SSBO"
    struct_member_name: 
    storage_class: -1 # NOT APPLICABLE
    type_flags: 0x10080000 # STRUCT EXTERNAL_BLOCK 
    decoration_flags: 0x00000001 # BLOCK 
    traits:
      numeric:
        scalar: { width: 0, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 1
    members:
      - *td0
  - &td2
    id: 6
    op: 21
    type_name: 
    struct_member_name: "a"
    storage_class: 0 # UniformConstant
    type_flags: 0x00000004 # INT 
    decoration_flags: 0x00000000 # NONE
    traits:
      numeric:
        scalar: { width: 32, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 0
    members:
  - &td3
    id: 8
    op: 28
    type_name: 
    struct_member_name: "b"
    storage_class: 0 # UniformConstant
    type_flags: 0x20000004 # ARRAY INT 
    decoration_flags: 0x00000000 # NONE
    traits:
      numeric:
        scalar: { width: 32, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 1, dims: [4,], stride: 4 }
    member_count: 0
    members:
  - &td4
    id: 6
    op: 21
    type_name: 
    struct_member_name: "t"
    storage_class: 0 # UniformConstant
    type_flags: 0x00000004 # INT 
    decoration_flags: 0x00000000 # NONE
    traits:
      numeric:
        scalar: { width: 32, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 0
    members:
  - &td5
    id: 6
    op: 21
    type_name: 
    struct_member_name: "s"
    storage_class: 0 # UniformConstant
    type_flags: 0x00000004 # INT 
    decoration_flags: 0x00000000 # NONE
    traits:
      numeric:
        scalar: { width: 32, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 0
    members:
  - &td6
    id: 9
    op: 30
    type_name: "Bar"
    struct_member_name: "bar"
    storage_class: 0 # UniformConstant
    type_flags: 0x10080000 # STRUCT EXTERNAL_BLOCK 
    decoration_flags: 0x00000000 # NONE
    traits:
      numeric:
        scalar: { width: 0, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 2
    members:
      - *td4
      - *td5
  - &td7
    id: 6
    op: 21
    type_name: 
    struct_member_name: "x"
    storage_class: 0 # UniformConstant
    type_flags: 0x00000004 # INT 
    decoration_flags: 0x00000000 # NONE
    traits:
      numeric:
        scalar: { width: 32, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 0
    members:
  - &td8
    id: 10
    op: 32
    type_name: "Node"
    struct_member_name: "node"
    storage_class: 5349 # PhysicalStorageBuffer
    type_flags: 0x50080000 # STRUCT REF EXTERNAL_BLOCK 
    decoration_flags: 0x00000001 # BLOCK 
    traits:
      numeric:
        scalar: { width: 0, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 1
    members:
      - *td7
  - &td9
    id: 11
    op: 30
    type_name: "foo"
    struct_member_name: 
    storage_class: -1 # NOT APPLICABLE
    type_flags: 0x10080000 # STRUCT EXTERNAL_BLOCK 
    decoration_flags: 0x00000001 # BLOCK 
    traits:
      numeric:
        scalar: { width: 0, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 4
    members:
      - *td2
      - *td3
      - *td6
      - *td8
  - &td10
    id: 6
    op: 21
    type_name: 
    struct_member_name: "x"
    storage_class: 0 # UniformConstant
    type_flags: 0x00000004 # INT 
    decoration_flags: 0x00000000 # NONE
    traits:
      numeric:
        scalar: { width: 32, signedness: 0 }
        vector: { component_count: 0 }
        matrix: { column_count: 0, row_count: 0, stride: 0 }
      image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
      array: { dims_count: 0, dims: [], stride: 0 }
    member_count: 0
    members:
all_block_variables:
  - &bv0
    name: "out_value"
    offset: 0
    absolute_offset: 0
    size: 4
    padded_size: 4
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 32, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000001 # UNUSED 
    member_count: 0
    members:
    type_description: *td0
  - &bv1
    name: ""
    offset: 0
    absolute_offset: 0
    size: 0
    padded_size: 0
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 0, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000001 # UNUSED 
    member_count: 1
    members:
      - *bv0
    type_description: *td1
  - &bv2
    name: "a"
    offset: 0
    absolute_offset: 0
    size: 4
    padded_size: 4
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 32, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000001 # UNUSED 
    member_count: 0
    members:
    type_description: *td2
  - &bv3
    name: "b"
    offset: 4
    absolute_offset: 4
    size: 16
    padded_size: 16
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 32, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 1, dims: [4,], stride: 4 }
    flags: 0x00000001 # UNUSED 
    member_count: 0
    members:
    type_description: *td3
  - &bv4
    name: "t"
    offset: 0
    absolute_offset: 20
    size: 4
    padded_size: 4
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 32, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000001 # UNUSED 
    member_count: 0
    members:
    type_description: *td4
  - &bv5
    name: "s"
    offset: 4
    absolute_offset: 24
    size: 4
    padded_size: 4
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 32, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000001 # UNUSED 
    member_count: 0
    members:
    type_description: *td5
  - &bv6
    name: "bar"
    offset: 20
    absolute_offset: 20
    size: 8
    padded_size: 8
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 0, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000001 # UNUSED 
    member_count: 2
    members:
      - *bv4
      - *bv5
    type_description: *td6
  - &bv7
    name: "x"
    offset: 0
    absolute_offset: 0
    size: 4
    padded_size: 4
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 32, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000001 # UNUSED 
    member_count: 0
    members:
    type_description: *td10
  - &bv8
    name: "node"
    offset: 32
    absolute_offset: 32
    size: 8
    padded_size: 8
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 0, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000001 # UNUSED 
    member_count: 1
    members:
      - *bv7
    type_description: *td8
  - &bv9
    name: ""
    offset: 0
    absolute_offset: 0
    size: 40
    padded_size: 40
    decorations: 0x00000000 # NONE
    numeric:
      scalar: { width: 0, signedness: 0 }
      vector: { component_count: 0 }
      matrix: { column_count: 0, row_count: 0, stride: 0 }
    array: { dims_count: 0, dims: [], stride: 0 }
    flags: 0x00000000 # NONE
    member_count: 4
    members:
      - *bv2
      - *bv3
      - *bv6
      - *bv8
    type_description: *td9
all_descriptor_bindings:
  - &db0
    spirv_id: 17
    name: ""
    binding: 0
    input_attachment_index: 0
    set: 0
    decoration_flags: 0x00000000 # NONE
    descriptor_type: 7 # VK_DESCRIPTOR_TYPE_STORAGE_BUFFER
    resource_type: 8 # UAV
    image: { dim: 0, depth: 0, arrayed: 0, ms: 0, sampled: 0, image_format: 0 } # dim=1D image_format=Unknown
    block: *bv1 # ""
    array: { dims_count: 0, dims: [] }
    accessed: 0
    uav_counter_id: 4294967295
    uav_counter_binding:
    type_description: *td1
    word_offset: { binding: 174, set: 178 }
all_interface_variables:
module:
  generator: 8 # Khronos Glslang Reference Front End
  entry_point_name: "main"
  entry_point_id: 4
  source_language: 2 # GLSL
  source_language_version: 460
  spirv_execution_model: 5 # GLCompute
  shader_stage: 0x00000020 # CS
  descriptor_binding_count: 1
  descriptor_bindings:
    - *db0 # ""
  descriptor_set_count: 1
  descriptor_sets:
  - set: 0
    binding_count: 1
    bindings:
      - *db0 # ""
  input_variable_count: 0,
  input_variables:
  output_variable_count: 0,
  output_variables:
  push_constant_count: 1,
  push_constants:
    - *bv9 # ""
  specialization_constant_count: 0,
  specialization_constants:
...
