
{ COMMON DECK CYDCYBL }

{   This deck contains type declarations for CYBIL data types.}
{ DO NOT USE the record types that begin with ost$ because they will be deleted
{ eventually.  The record types that begin with cyt$ are OK and they may
{ be used instead of the ost$ types.

  TYPE

*IF NOT $true(osv$unix)
    ost$pointer_to_procedure = record
      code_base_pointer_p: ^ost$external_code_base_pointer,
      static_link: ^cell,
    recend,

    ost$adaptable_array_pointer = record
      pointer: ^cell,
      array_size: 0 .. 0ffffffff(16),
      lower_bound: 0 .. 0ffffffff(16),
      element_size: 0 .. 0ffffffff(16),
    recend,

    ost$adaptable_heap_pointer = record
      pva: ^cell,
      length: 0 .. 7fffffff(16),
    recend,

    ost$sequence_pointer = record
      pva: ^cell,
      length: 0 .. 7fffffff(16),
      nextt: 0 .. 7fffffff(16),
    recend,

    ost$bound_variant_pointer = record
      pva: ^cell,
      length: 0 .. 7fffffff(16),
    recend,

    ost$adaptable_string_pointer = record
      pva: ^cell,
      length: 0 .. 0ffff(16),
    recend,
*ELSE
    ost$pointer_to_procedure = cyt$pointer_to_procedure,
    ost$adaptable_array_pointer = cyt$adaptable_array_pointer,
    ost$adaptable_heap_pointer = cyt$adaptable_heap_pointer,
    ost$sequence_pointer = cyt$sequence_pointer,
    ost$bound_variant_pointer = cyt$bound_variant_pointer,
    ost$adaptable_string_pointer = cyt$adaptable_string_pointer,
*IFEND

    cyt$pointer_to_procedure = record
      code_base_pointer_p: ^ost$external_code_base_pointer,
      static_link: ^cell,
    recend,

    cyt$adaptable_array_pointer = record
      pointer: ^cell,
*IF NOT $true(osv$unix)
      array_size: 0 .. 0ffffffff(16),
      lower_bound: 0 .. 0ffffffff(16),
      element_size: 0 .. 0ffffffff(16),
*ELSE
      array_size: 0 .. 7fffffff(16),
      lower_bound: 0 .. 7fffffff(16),
      element_size: 0 .. 7fffffff(16),
*IFEND
    recend,

    cyt$adaptable_heap_pointer = record
      pva: ^cell,
      length: 0 .. 7fffffff(16),
    recend,

    cyt$sequence_pointer = record
*IF NOT $true(osv$unix)
      pva: ^cell,
*ELSE
      pointer_sequence: -80000000(16) .. 7fffffff(16),
*IFEND
      length: 0 .. 7fffffff(16),
      nextt: 0 .. 7fffffff(16),
    recend,

    cyt$bound_variant_pointer = record
      pva: ^cell,
      length: 0 .. 7fffffff(16),
    recend,

    cyt$adaptable_string_pointer = record
      pva: ^cell,
      length: 0 .. 0ffff(16),
    recend;

*copyc OSD$CODE_BASE_POINTER
