1.4 The low-level SWI-Prolog Implementation
All Application Manual Name SummaryHelp

  • Documentation
    • Reference manual
    • Packages
      • Google's Protocol Buffers Library
        • Google's Protocol Buffers
          • The low-level SWI-Prolog Implementation
            • Wiretypes
            • Tags (field numbers)
            • Basic Usage
            • Alternation, Aggregation, Encapsulation, and Enumeration
            • Groups (deprecated)
            • Advanced Topics

1.4.2 Tags (field numbers)

A tag (or field number) is a small integer that is present in every wire-stream primitive. The tag is the only means that the interpreter has to synchronize the wire-stream with its template. Tags are user defined for each term in each message of the wire-stream. The protobuf specification requires that each field within a message has a unique field number; the protobuf compiler (protoc) will produce an error if a field number is reused (field numbers are unique only within a message; an embedded message can use the same field numbers without ambigituity).