Question: is it possible to import partial types? Can imports extend enums?
Something else came up, I'm still attempting to write something for [the postgres protocol](https://www.postgresql.org/docs/10/static/protocol.html) :)

Postgres uses TLV, but does an annoying thing where some of the Ts have two meanings, one if the client (frontend) is sending a message, and another if the server (backend) is sending a message. For example, from [this page](https://www.postgresql.org/docs/10/static/protocol-message-formats.html), if the first byte of a message is `S` then it could be either a `ParameterStatus` packet (if sent from the backend), or a `Sync` message (if sent from the frontend).

My first thought is to have three `.ksy` files, `frontend.ksy`, `backend.ksy`, and `shared.ksy`. In the first two I'd like to be able to do something like:

```yaml
seq:
  - id: messages
    repeat: eos
    type: message
types:
  message:
    seq:
      - id: msg_type
        type: str
        encoding: ASCII
        size: 1
      - id: len
        type: u4
      - id: body
        size: len - 4  # the length includes itself
        type:
          switch-on: msg_type
          cases:
            '"S"': parameter_status
           XXX import the rest of the cases from shared.ksy XXX
```

However, I'm not sure how to do that, so instead I have to repeat myself and write the full list of cases in both files. I'm hoping that there's a better way I'm not seeing?