hhh 1.0.1

The hhh Binary File Processor
Documentation
[[prefix]]

// Set up the offsets to elements of the structure.
$link_off = 0
$name_ptr = 8
$next_ptr = 16
$prev_ptr = 24

// Record the structure's total length.
$length = 32

0x0: 0xfe 0xff 0x10 0x22

0x10: $1name = $_ "First Element" 0
0x20: $2name = $_ "Second Element" 0

// Align on a 16-byte boundary.
[($_ + 15) & -16]:

// An instance of the structure.
{
    $name_ptr: $1name/8LE           // Pointer to the name.
    $next_ptr: [$__ + $length]/8LE  // Pointer to the next structure.
    $prev_ptr: 0/8LE                // Null
    $length:
}

// Second instance of the structure.
{
    $name_ptr: $2name/8LE           // Pointer to the name.
    $next_ptr: 0/8LE                // Null
    $prev_ptr: [$__ - $length]/8LE  // Pointer to the previous structure.
    $length:
}

0x21 0x43