hhh 1.0.1

The hhh Binary File Processor
Documentation
// Try to visit every sequence prefix

[[stoic]]

// Errors in parsing directives.
[[]]
[[[]]]
[[f%]]
[[%]]
[[f(5]]
[[bytes-per-group(-292929)]]

// #
=
->
:
/24le
)

// Some items
21 34 18 8e { 15 }
(44 8e 01 9f)*4 { 15 }

[[set("a", 0x012e)]]

// # variable
$a $a
$a = (00 aa)
$a ->
$a :
$a 12
$a/2LE
$a [[ ascii ]]
$a { 15 }
$a ( 88 aa )
$a )

// # number
12 $a
12 =
12 ->
12 :
12 13
12 /4BE
12 [[ ascii ]]
12 { 15 }
12 ( 13 14 15 )
12 )

// # open
( $a =
->
:
/4
12
[[ ascii ]]
{ 15 }
(
)

// # assignment
$k = $a
$k = =
$k = ->
$k = :
$k = [0x81]
$k = /12LE
$k = [[ ascii ]]
$k = { 15 }
$k = ( 13 14 15 )
$k = )

// # number_capture
12 -> $v
12 -> =
12 -> ->
12 -> :
12 -> 12
12 -> /12LE
12 -> [[ ascii ]]
12 -> { 15 }
12 -> (
12 -> )

// # open_variable
( $v
$k = 
$a ->
$a :
$a 12
$a /4
$a [[ ascii ]]
$a { 15 }
$a (
$a )

// # open_number
( 12 $a
12 =
12 ->
12 :
12 12
12 /4
12 [[ ascii ]]
12 { 15 }
12 (
12 )

// # closed
( 12 ) $a
( 12 ) =
( 12 ) ->
( 12 ) :
( 12 ) 12
( 12 ) /4LE
( 12 ) [[ ascii ]]
( 12 ) { 15 }
( 12 ) ( 12 )
( 12 ) )

// # assignment_variable
$r = $a $k
$r = $a =
$r = $a ->
$r = $a :
$r = $a 17
$r = $a /2
$r = $a [[ ascii ]]
$r = $a { 15 }
$r = $a ( 12 )
$r = $a )

// # assignment_number
$m = 81 $a
$m = 81 =
$m = 81 ->
$m = 81 :
$m = 81 82
$m = 81 /2
$m = 81 [[ ascii ]]
$m = 81 { 15 }
$m = 81 ( 82 )
$m = 81 )

// # assignment_open
$n = ( $a )
$n = ( =
->
:
16
/2
[[ ascii ]]
{ 15 }
(
)

// # closed_capture
( 65 65 ) -> $p
( 65 66 ) -> =
( 65 66 ) -> ->
( 65 66 ) -> :
( 65 66 ) -> 12
( 65 66 ) -> /4
( 65 66 ) -> [[ ascii ]]
( 65 66 ) -> { 15 }
( 65 66 ) -> (
( 65 66 ) -> )

// # assignment_open_variable
$n = ( $a $b )
$n = ( $a =
$a ->
$a :
$a 18
$a /2
$a [[ ascii ]]
$a { 15 }
$a (
$a )

// # assignment_open_number
$n = ( 19 $a )
$n = ( 19 =
19 ->
19 :
19 18
19 /2
19 [[ ascii ]]
19 { 15 }
19 (
19 )

[[prefix]]

// #
=
->
:
/24le
)

// Some items
21 34 18 243 { 15 }
(44 243 01 118)*4 { 15 }

[[set("a", 0x012e)]]

// # variable
$a $a
$a = (00 170)
$a ->
$a :
$a 12
$a/2LE
$a [[ ascii ]]
$a { 15 }
$a ( 88 170 )
$a )

// # number
12 $a
12 =
12 ->
12 :
12 13
12 /4BE
12 [[ ascii ]]
12 { 15 }
12 ( 13 14 15 )
12 )

// # open
( =
->
:
/4
12
[[ ascii ]]
{ 15 }
(
)

// # assignment
$k = $a
$k = =
$k = ->
$k = :
$k = [0x81]
$k = /12LE
$k = [[ ascii ]]
$k = { 15 }
$k = ( 13 14 15 )
$k = )

// # number_capture
12 -> $v
12 -> =
12 -> ->
12 -> :
12 -> 12
12 -> /12LE
12 -> [[ ascii ]]
12 -> { 15 }
12 -> (
12 -> )

// # open_variable
( $v
$k = 
$a ->
$a :
$a 12
$a /4
$a [[ ascii ]]
$a { 15 }
$a (
$a )

// # open_number
( 12 $a
12 =
12 ->
12 :
12 12
12 /4
12 [[ ascii ]]
12 { 15 }
12 (
12 )

// # closed
( 12 ) $a
( 12 ) =
( 12 ) ->
( 12 ) :
( 12 ) 12
( 12 ) /4LE
( 12 ) [[ ascii ]]
( 12 ) { 15 }
( 12 ) ( 12 )
( 12 ) )

// # assignment_variable
$r = $a $k
$r = $a =
$r = $a ->
$r = $a :
$r = $a 17
$r = $a /2
$r = $a [[ ascii ]]
$r = $a { 15 }
$r = $a ( 12 )
$r = $a )

// # assignment_number
$m = 81 $a
$m = 81 =
$m = 81 ->
$m = 81 :
$m = 81 82
$m = 81 /2
$m = 81 [[ ascii ]]
$m = 81 { 15 }
$m = 81 ( 82 )
$m = 81 )

// # assignment_open
$n = ( $a )
$n = ( =
->
:
16
/2
[[ ascii ]]
{ 15 }
(
)

// # closed_capture
( 65 65 ) -> $p
( 65 66 ) -> =
( 65 66 ) -> ->
( 65 66 ) -> :
( 65 66 ) -> 12
( 65 66 ) -> /4
( 65 66 ) -> [[ ascii ]]
( 65 66 ) -> { 15 }
( 65 66 ) -> (
( 65 66 ) -> )

// # assignment_open_variable
$n = ( $a $b )
$n = ( $a =
$a ->
$a :
$a 18
$a /2
$a [[ ascii ]]
$a { 15 }
$a (
$a )

// # assignment_open_number
$n = ( 19 $a )
$n = ( 19 =
19 ->
19 :
19 18
19 /2
19 [[ ascii ]]
19 { 15 }
19 (
19 )

-0o8
0o8
8a
$
(5)*K
[6[
[)+]
()->$e
}}}}

[[bias(-0x100)]]
$a = 0x100
$a:

[[bias(-0x200)]]
$a:

[[no_prefix]]

-14
"\xNN"