anchor.diff:  
   [[encoding-states]]
   == Encoding/Decoding States
  +Many of *Inform*'s implementations require that states be encoded as integers. Two
  +functions, <<inform_encode>> and <<inform_decode>> handle encoding and decoding states
  +to and from integers, respectively.
   
   ****
   [[inform_encode]]
  
positive.code: int32_t inform_encode(int const *state, size_t n, int b,
          inform_error *err);
  ----
  [horizontal]
  Headers::
      `inform/utilities.h`,
  
negative.code: ----
  void inform_decode(int32_t encoding, int b, int *state, size_t n,
          inform_error *err);
  ----
  Decode a 32-bit integer as a base-`b` state with `n`-digits.
  
  *Examples:*
  
  Binary States:
  [source,c]
  ----
  inform_error err = INFORM_SUCCESS;
  int state[3];
  
  inform_decode(4, 2, state, 3, &err);
  // state ~ { 1 0 0 }
  
  inform_decode(2, 2, state, 3, &err);
  // state ~ { 0 1 0 }
  
  inform_decode(5, 2, state, 3, &err);
  // state ~ { 1 0 1 }
  ----
  
  Base-4 States:
  [source,c]
  ----
  inform_error err = INFORM_SUCCESS;
  int state[3];
  
  inform_decode(48, 4, state, 3, &err);
  // state ~ { 3 0 0 }
  
  inform_decode(12, 4, state, 3, &err);
  // state ~ { 0 3 0 }
  
  inform_decode(41, 4, state, 3, &err);
  // state ~ { 2 2 1 }
  ----
  [horizontal]
  Headers::
  