English ▼
Skip to page content Skip to main navigation
e.g. "templates" or "datastore"

# The Variant Class

#### Experimental!

ProtoRPC is an experimental, innovative, and rapidly changing new feature for App Engine. Unfortunately, being on the bleeding edge means that we may make backwards-incompatible changes to ProtoRPC. We will inform the community when this feature is no longer experimental.

The `protobuf` wire format uses the Variant class to determine how to transmit a single piece of data. May be used by other formats; see Protocol Buffers Encoding for more information.

`Variant` is provided by the `protorpc.messages` module.

Variant has the following values:

`BOOL`
  Boolean value (True or False)
`BYTES`
  String of 8-bit bytes.
`DOUBLE`
  64-bit floating point number.
`ENUM`
  Enum value (an integer).
`FLOAT`
  32-bit floating point number.
`INT32`
  32-bit signed integer.
`INT64`
  64-bit signed integer.
`MESSAGE`
  Embedded message as byte string.
`SINT32`
  32-bit signed integer. Uses ZigZag encoding.
`SINT64`
  64-bit signed integer. Uses ZigZag encoding.
`STRING`
  String of UTF-8-encoded text.
`UINT32`
  32-bit unsigned integer.
`UINT64`
  64-bit unsigned integer.