anchor.diff:  topLevelDef
     : messageDef
     | enumDef
  +  | extendDef
     | serviceDef
     ;
   
  
positive.code:   | ENUM
    | MESSAGE
    | SERVICE
    | RPC
    | STREAM
    | RETURNS
  
negative.code: ENUM: 'enum';
  MESSAGE: 'message';
  SERVICE: 'service';
  EXTEND: 'extend';
  RPC: 'rpc';
  STREAM: 'stream';
  RETURNS: 'returns';
  