mu/tools/expand_string_handle

21 lines
584 B
Bash
Executable File

#!/bin/sh
# Expand syntax sugar for SubX string literals and show the corresponding handle definition.
#
# The handle has a fake alloc-id; we're never going to try to reclaim global
# variables, we just sometimes need handles in them to satisfy type constraints.
INPUT=$(cat)
echo " 0x11/imm32/alloc-id:fake:payload"
echo " # \"$INPUT\""
# print length in bytes
printf " 0x%x/imm32/size\n" $(echo -n $INPUT |wc -c)
# print ascii codes for each character in hex
echo -n " "
for c in $(echo "$INPUT" |sed -e 's/./& /g')
do
echo -n " 0x$(printf '%x' "'$c")/$c"
done
echo