Common Lisp Package: PROTOCOL-BUFFER-COMPILER

README:

FUNCTION

Private

GEN-CLASS (CLASS-NAME SPECS)

Generate code for the DEFCLASS.

GEN-ENUM (ENUM-NAME ENUMS)

Generate code to map between enum codes and keyword symbols.

GEN-INIT-FORM (TYPE REPEATED PACKED)

Generate the value to set a field to on MAKE-INSTANCE

GEN-MSG-DEFS (NAME SPECS)

Generate all definitions for one message type

GEN-PACK (NAME SPECS)

Generate code for the PACK defmethod.

GEN-PACK-SLOT (BUFSYM STARTSYM OBJSYM NAME TYPE POS &KEY REPEATED PACKED &ALLOW-OTHER-KEYS)

Generate code to pack a single slot.

GEN-PACKED-SIZE (NAME SPECS)

Generate code for the PACKED-SIZE defmethod.

GEN-SLOT-SIZE (OBJECT SLOT-NAME TYPE POS &KEY PACKED REPEATED &ALLOW-OTHER-KEYS)

Generate code to find the packed size of a single slot.

GEN-START-CODE-SIZE (TYPE POS)

Find the size of the start code

GEN-UNPACK (NAME SPECS)

Generate code for the UNPACK method

GEN-UNPACKER (BUFSYM STARTSYM OBJSYM NAME TYPE REPEATED PACKED)

Generate code to unpack a single slot

GET-DECODER-NAME (PROTOBUF-TYPE)

Find the function symbol to decode this type.

Undocumented

ENUM-TYPE-P (SYM)

FIELD-DESCRIPTOR-PROTO-LABEL-CODE (G2652)

FIELD-DESCRIPTOR-PROTO-LABEL-DECODE (G2654 G2655)

FIELD-DESCRIPTOR-PROTO-LABEL-SYMBOL (G2653)

FIELD-DESCRIPTOR-PROTO-TYPE-CODE (G2646)

FIELD-DESCRIPTOR-PROTO-TYPE-DECODE (G2648 G2649)

FIELD-DESCRIPTOR-PROTO-TYPE-SYMBOL (G2647)

FIELD-OPTIONS-CTYPE-CODE (G1046)

FIELD-OPTIONS-CTYPE-DECODE (G1048 G1049)

FIELD-OPTIONS-CTYPE-SYMBOL (G1047)

FILE-OPTIONS-OPTIMIZE-MODE-CODE (G1507)

FILE-OPTIONS-OPTIMIZE-MODE-DECODE (G1509 G1510)

FILE-OPTIONS-OPTIMIZE-MODE-SYMBOL (G1508)

FIXED-P (TYPE)

FIXED-SIZE (TYPE)

FIXED32-P (TYPE)

FIXED64-P (TYPE)

FORMAT-VECTOR (STREAM VECTOR)

GEN-INTERNAL-ENUMS (NAME SPECS)

GET-PROTO-SET (FILESPEC)

INTEGER-TYPE-P (TYPE)

LENGTH-DELIM-P (TYPE)

LISP-TYPE (IDENT &OPTIONAL REPEATED)

LOAD-PROTO-STRUCTS (FILESPEC)

LOOKUP-PACKAGE-NAME (NAME)

MACROIZE-SE (SE)

MAKE-START-CODE-SYM (SLOT-POSITION TYPE)

MANGLE-UPCASE-HYPEN (IDENT)

MAP-FIELDS (FUNCTION SPECS &REST ARGS)

PB-STR (NAME)

PB-SYM (NAME &OPTIONAL PACKAGE)

PRIMITIVE-TYPE-P (TYPE)

SANITIZE-FILE (FILESPEC)

SANITIZE-NAME (NAME PACKAGE)

SANITIZE-NAME-SLOT (OBJECT SLOT PACKAGE)

SANITIZE-PACKAGE (FILE-PROTO)

SANITIZE-TYPE (FIELD-DESC PACKAGE)

SANITIZER (PARENT PACKAGE)

SLOT-BOUND-VALUE (OBJECT SLOT &OPTIONAL DEFAULT-VALUE)

SVARINT-P (TYPE)

SYMBOL-KEYWORD (SYM)

SYMBOL-STRING= (A B)

SYMCAT (PACKAGE-OR-SYM &REST SYMBOLS)

UNMANGLE (STR)

UNMANGLE-SLOT (OBJECT SLOT)

UVARINT-P (TYPE)

VARINT-ENUM-P (TYPE)

VARINT-P (TYPE)

WIRE-TYPECODE (TYPE &OPTIONAL REPEATED PACKED)

MACRO

Public

Undocumented

DEF-PROTO-ENUM (NAME &BODY VALUES)

DEF-PROTO-MSG (NAME &BODY SPECS)

LOAD-PROTO-SET (FILESPEC)

Private

DEF-PACK-VAL (START-PLACE BUFFER SLOT TYPE)

Generate code to pack a single value into the buffer.

DEF-REPEATED-PACKED-SIZE (TYPE SLOT &OPTIONAL POS)

Packed size of a repeated packed field.

DEF-REPEATED-SIZE (TYPE SLOT POS)

Packed size of a repeated field.

DEF-SCALAR-SIZE (TYPE SLOT POS)

Packed size of a scalar field.

DO-UNPACK-AND-INCF (START-PLACE BUFFER TYPE &OPTIONAL INSTANCE)

Unpack a scalar value and increment start.

Undocumented

DO-UNPACK-VALUE (TYPE BUFFER START &OPTIONAL INSTANCE)

DUMP-PROTO-SET (FILESPEC)

WITH-GENSYMS ((&REST SYMBOLS) &BODY BODY)

GENERIC-FUNCTION

Private

SANITIZE (OBJECT &KEY PARENT PACKAGE)

Convert the structure based protocol buffer representation obtainened by parsing the binary output of protoc into S-Expressions

VARIABLE

Private

Undocumented

+TYPES+

CLASS

Private

Undocumented

DESCRIPTOR-PROTO

DESCRIPTOR-PROTO-EXTENSION-RANGE

ENUM-DESCRIPTOR-PROTO

ENUM-OPTIONS

ENUM-VALUE-DESCRIPTOR-PROTO

ENUM-VALUE-OPTIONS

FIELD-DESCRIPTOR-PROTO

FIELD-OPTIONS

FILE-DESCRIPTOR-PROTO

FILE-DESCRIPTOR-SET

FILE-OPTIONS

MESSAGE-OPTIONS

METHOD-DESCRIPTOR-PROTO

METHOD-OPTIONS

SERVICE-DESCRIPTOR-PROTO

SERVICE-OPTIONS

UNINTERPRETED-OPTION

UNINTERPRETED-OPTION-NAME-PART