Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Attributes | Static Private Attributes | List of all members
google.protobuf.descriptor.FieldDescriptor Class Reference
Inheritance diagram for google.protobuf.descriptor.FieldDescriptor:
Inheritance graph
[legend]

Public Member Functions

def __init__ (self, name, full_name, index, number, type, cpp_type, label, default_value, message_type, enum_type, containing_type, is_extension, extension_scope, options=None, serialized_options=None, has_default_value=True, containing_oneof=None, json_name=None, file=None)
 
def __new__ (cls, name, full_name, index, number, type, cpp_type, label, default_value, message_type, enum_type, containing_type, is_extension, extension_scope, options=None, serialized_options=None, has_default_value=True, containing_oneof=None, json_name=None, file=None)
 
def camelcase_name (self)
 
- Public Member Functions inherited from google.protobuf.descriptor.DescriptorBase
def __init__ (self, options, serialized_options, options_class_name)
 
def GetOptions (self)
 
- Public Member Functions inherited from google.protobuf.descriptor.DescriptorMetaclass
def __instancecheck__ (cls, obj)
 

Static Public Member Functions

def ProtoTypeToCppProtoType (proto_type)
 

Public Attributes

 containing_oneof
 
 containing_type
 
 cpp_type
 
 default_value
 
 enum_type
 
 extension_scope
 
 file
 
 full_name
 
 has_default_value
 
 index
 
 is_extension
 
 json_name
 
 label
 
 message_type
 
 name
 
 number
 
 type
 
- Public Attributes inherited from google.protobuf.descriptor.DescriptorBase
 has_options
 

Static Public Attributes

int CPPTYPE_BOOL = 7
 
int CPPTYPE_DOUBLE = 5
 
int CPPTYPE_ENUM = 8
 
int CPPTYPE_FLOAT = 6
 
int CPPTYPE_INT32 = 1
 
int CPPTYPE_INT64 = 2
 
int CPPTYPE_MESSAGE = 10
 
int CPPTYPE_STRING = 9
 
int CPPTYPE_UINT32 = 3
 
int CPPTYPE_UINT64 = 4
 
int FIRST_RESERVED_FIELD_NUMBER = 19000
 
int LABEL_OPTIONAL = 1
 
int LABEL_REPEATED = 3
 
int LABEL_REQUIRED = 2
 
int LAST_RESERVED_FIELD_NUMBER = 19999
 
int MAX_CPPTYPE = 10
 
tuple MAX_FIELD_NUMBER = (1 << 29) - 1
 
int MAX_LABEL = 3
 
int MAX_TYPE = 18
 
int TYPE_BOOL = 8
 
int TYPE_BYTES = 12
 
int TYPE_DOUBLE = 1
 
int TYPE_ENUM = 14
 
int TYPE_FIXED32 = 7
 
int TYPE_FIXED64 = 6
 
int TYPE_FLOAT = 2
 
int TYPE_GROUP = 10
 
int TYPE_INT32 = 5
 
int TYPE_INT64 = 3
 
int TYPE_MESSAGE = 11
 
int TYPE_SFIXED32 = 15
 
int TYPE_SFIXED64 = 16
 
int TYPE_SINT32 = 17
 
int TYPE_SINT64 = 18
 
int TYPE_STRING = 9
 
int TYPE_UINT32 = 13
 
int TYPE_UINT64 = 4
 

Private Attributes

 _camelcase_name
 
 _cdescriptor
 

Static Private Attributes

 _C_DESCRIPTOR_CLASS = _message.FieldDescriptor
 
dictionary _PYTHON_TO_CPP_PROTO_TYPE_MAP
 

Detailed Description

Descriptor for a single field in a .proto file.

A FieldDescriptor instance has the following attributes:

  name: (str) Name of this field, exactly as it appears in .proto.
  full_name: (str) Name of this field, including containing scope.  This is
    particularly relevant for extensions.
  camelcase_name: (str) Camelcase name of this field.
  index: (int) Dense, 0-indexed index giving the order that this
    field textually appears within its message in the .proto file.
  number: (int) Tag number declared for this field in the .proto file.

  type: (One of the TYPE_* constants below) Declared type.
  cpp_type: (One of the CPPTYPE_* constants below) C++ type used to
    represent this field.

  label: (One of the LABEL_* constants below) Tells whether this
    field is optional, required, or repeated.
  has_default_value: (bool) True if this field has a default value defined,
    otherwise false.
  default_value: (Varies) Default value of this field.  Only
    meaningful for non-repeated scalar fields.  Repeated fields
    should always set this to [], and non-repeated composite
    fields should always set this to None.

  containing_type: (Descriptor) Descriptor of the protocol message
    type that contains this field.  Set by the Descriptor constructor
    if we're passed into one.
    Somewhat confusingly, for extension fields, this is the
    descriptor of the EXTENDED message, not the descriptor
    of the message containing this field.  (See is_extension and
    extension_scope below).
  message_type: (Descriptor) If a composite field, a descriptor
    of the message type contained in this field.  Otherwise, this is None.
  enum_type: (EnumDescriptor) If this field contains an enum, a
    descriptor of that enum.  Otherwise, this is None.

  is_extension: True iff this describes an extension field.
  extension_scope: (Descriptor) Only meaningful if is_extension is True.
    Gives the message that immediately contains this extension field.
    Will be None iff we're a top-level (file-level) extension field.

  options: (descriptor_pb2.FieldOptions) Protocol message field options or
    None to use default field options.

  containing_oneof: (OneofDescriptor) If the field is a member of a oneof
    union, contains its descriptor. Otherwise, None.

  file: (FileDescriptor) Reference to file descriptor.

Definition at line 392 of file descriptor.py.

Constructor & Destructor Documentation

◆ __init__()

def google.protobuf.descriptor.FieldDescriptor.__init__ (   self,
  name,
  full_name,
  index,
  number,
  type,
  cpp_type,
  label,
  default_value,
  message_type,
  enum_type,
  containing_type,
  is_extension,
  extension_scope,
  options = None,
  serialized_options = None,
  has_default_value = True,
  containing_oneof = None,
  json_name = None,
  file = None 
)
The arguments are as described in the description of FieldDescriptor
attributes above.

Note that containing_type may be None, and may be set later if necessary
(to deal with circular references between message types, for example).
Likewise for extension_scope.

Definition at line 536 of file descriptor.py.

Member Function Documentation

◆ __new__()

def google.protobuf.descriptor.FieldDescriptor.__new__ (   cls,
  name,
  full_name,
  index,
  number,
  type,
  cpp_type,
  label,
  default_value,
  message_type,
  enum_type,
  containing_type,
  is_extension,
  extension_scope,
  options = None,
  serialized_options = None,
  has_default_value = True,
  containing_oneof = None,
  json_name = None,
  file = None 
)

Definition at line 524 of file descriptor.py.

◆ camelcase_name()

def google.protobuf.descriptor.FieldDescriptor.camelcase_name (   self)

Definition at line 581 of file descriptor.py.

◆ ProtoTypeToCppProtoType()

def google.protobuf.descriptor.FieldDescriptor.ProtoTypeToCppProtoType (   proto_type)
static
Converts from a Python proto type to a C++ Proto Type.

The Python ProtocolBuffer classes specify both the 'Python' datatype and the
'C++' datatype - and they're not the same. This helper method should
translate from one to another.

Args:
  proto_type: the Python proto type (descriptor.FieldDescriptor.TYPE_*)
Returns:
  descriptor.FieldDescriptor.CPPTYPE_*, the C++ type.
Raises:
  TypeTransformationError: when the Python proto type isn't known.

Definition at line 587 of file descriptor.py.

Member Data Documentation

◆ _C_DESCRIPTOR_CLASS

google.protobuf.descriptor.FieldDescriptor._C_DESCRIPTOR_CLASS = _message.FieldDescriptor
staticprivate

Definition at line 522 of file descriptor.py.

◆ _camelcase_name

google.protobuf.descriptor.FieldDescriptor._camelcase_name
private

Definition at line 549 of file descriptor.py.

◆ _cdescriptor

google.protobuf.descriptor.FieldDescriptor._cdescriptor
private

Definition at line 569 of file descriptor.py.

◆ _PYTHON_TO_CPP_PROTO_TYPE_MAP

dictionary google.protobuf.descriptor.FieldDescriptor._PYTHON_TO_CPP_PROTO_TYPE_MAP
staticprivate
Initial value:
= {
TYPE_DOUBLE: CPPTYPE_DOUBLE,
TYPE_FLOAT: CPPTYPE_FLOAT,
TYPE_ENUM: CPPTYPE_ENUM,
TYPE_INT64: CPPTYPE_INT64,
TYPE_SINT64: CPPTYPE_INT64,
TYPE_SFIXED64: CPPTYPE_INT64,
TYPE_UINT64: CPPTYPE_UINT64,
TYPE_FIXED64: CPPTYPE_UINT64,
TYPE_INT32: CPPTYPE_INT32,
TYPE_SFIXED32: CPPTYPE_INT32,
TYPE_SINT32: CPPTYPE_INT32,
TYPE_UINT32: CPPTYPE_UINT32,
TYPE_FIXED32: CPPTYPE_UINT32,
TYPE_BYTES: CPPTYPE_STRING,
TYPE_STRING: CPPTYPE_STRING,
TYPE_BOOL: CPPTYPE_BOOL,
TYPE_MESSAGE: CPPTYPE_MESSAGE,
TYPE_GROUP: CPPTYPE_MESSAGE
}

Definition at line 485 of file descriptor.py.

◆ containing_oneof

google.protobuf.descriptor.FieldDescriptor.containing_oneof

Definition at line 566 of file descriptor.py.

◆ containing_type

google.protobuf.descriptor.FieldDescriptor.containing_type

Definition at line 561 of file descriptor.py.

◆ cpp_type

google.protobuf.descriptor.FieldDescriptor.cpp_type

Definition at line 557 of file descriptor.py.

◆ CPPTYPE_BOOL

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_BOOL = 7
static

Definition at line 479 of file descriptor.py.

◆ CPPTYPE_DOUBLE

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_DOUBLE = 5
static

Definition at line 477 of file descriptor.py.

◆ CPPTYPE_ENUM

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_ENUM = 8
static

Definition at line 480 of file descriptor.py.

◆ CPPTYPE_FLOAT

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_FLOAT = 6
static

Definition at line 478 of file descriptor.py.

◆ CPPTYPE_INT32

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_INT32 = 1
static

Definition at line 473 of file descriptor.py.

◆ CPPTYPE_INT64

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_INT64 = 2
static

Definition at line 474 of file descriptor.py.

◆ CPPTYPE_MESSAGE

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_MESSAGE = 10
static

Definition at line 482 of file descriptor.py.

◆ CPPTYPE_STRING

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_STRING = 9
static

Definition at line 481 of file descriptor.py.

◆ CPPTYPE_UINT32

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_UINT32 = 3
static

Definition at line 475 of file descriptor.py.

◆ CPPTYPE_UINT64

int google.protobuf.descriptor.FieldDescriptor.CPPTYPE_UINT64 = 4
static

Definition at line 476 of file descriptor.py.

◆ default_value

google.protobuf.descriptor.FieldDescriptor.default_value

Definition at line 560 of file descriptor.py.

◆ enum_type

google.protobuf.descriptor.FieldDescriptor.enum_type

Definition at line 563 of file descriptor.py.

◆ extension_scope

google.protobuf.descriptor.FieldDescriptor.extension_scope

Definition at line 565 of file descriptor.py.

◆ file

google.protobuf.descriptor.FieldDescriptor.file

Definition at line 548 of file descriptor.py.

◆ FIRST_RESERVED_FIELD_NUMBER

int google.protobuf.descriptor.FieldDescriptor.FIRST_RESERVED_FIELD_NUMBER = 19000
static

Definition at line 518 of file descriptor.py.

◆ full_name

google.protobuf.descriptor.FieldDescriptor.full_name

Definition at line 547 of file descriptor.py.

◆ has_default_value

google.protobuf.descriptor.FieldDescriptor.has_default_value

Definition at line 559 of file descriptor.py.

◆ index

google.protobuf.descriptor.FieldDescriptor.index

Definition at line 554 of file descriptor.py.

◆ is_extension

google.protobuf.descriptor.FieldDescriptor.is_extension

Definition at line 564 of file descriptor.py.

◆ json_name

google.protobuf.descriptor.FieldDescriptor.json_name

Definition at line 551 of file descriptor.py.

◆ label

google.protobuf.descriptor.FieldDescriptor.label

Definition at line 558 of file descriptor.py.

◆ LABEL_OPTIONAL

int google.protobuf.descriptor.FieldDescriptor.LABEL_OPTIONAL = 1
static

Definition at line 510 of file descriptor.py.

◆ LABEL_REPEATED

int google.protobuf.descriptor.FieldDescriptor.LABEL_REPEATED = 3
static

Definition at line 512 of file descriptor.py.

◆ LABEL_REQUIRED

int google.protobuf.descriptor.FieldDescriptor.LABEL_REQUIRED = 2
static

Definition at line 511 of file descriptor.py.

◆ LAST_RESERVED_FIELD_NUMBER

int google.protobuf.descriptor.FieldDescriptor.LAST_RESERVED_FIELD_NUMBER = 19999
static

Definition at line 519 of file descriptor.py.

◆ MAX_CPPTYPE

int google.protobuf.descriptor.FieldDescriptor.MAX_CPPTYPE = 10
static

Definition at line 483 of file descriptor.py.

◆ MAX_FIELD_NUMBER

tuple google.protobuf.descriptor.FieldDescriptor.MAX_FIELD_NUMBER = (1 << 29) - 1
static

Definition at line 517 of file descriptor.py.

◆ MAX_LABEL

int google.protobuf.descriptor.FieldDescriptor.MAX_LABEL = 3
static

Definition at line 513 of file descriptor.py.

◆ MAX_TYPE

int google.protobuf.descriptor.FieldDescriptor.MAX_TYPE = 18
static

Definition at line 467 of file descriptor.py.

◆ message_type

google.protobuf.descriptor.FieldDescriptor.message_type

Definition at line 562 of file descriptor.py.

◆ name

google.protobuf.descriptor.FieldDescriptor.name

Definition at line 546 of file descriptor.py.

◆ number

google.protobuf.descriptor.FieldDescriptor.number

Definition at line 555 of file descriptor.py.

◆ type

google.protobuf.descriptor.FieldDescriptor.type

Definition at line 556 of file descriptor.py.

◆ TYPE_BOOL

int google.protobuf.descriptor.FieldDescriptor.TYPE_BOOL = 8
static

Definition at line 456 of file descriptor.py.

◆ TYPE_BYTES

int google.protobuf.descriptor.FieldDescriptor.TYPE_BYTES = 12
static

Definition at line 460 of file descriptor.py.

◆ TYPE_DOUBLE

int google.protobuf.descriptor.FieldDescriptor.TYPE_DOUBLE = 1
static

Definition at line 449 of file descriptor.py.

◆ TYPE_ENUM

int google.protobuf.descriptor.FieldDescriptor.TYPE_ENUM = 14
static

Definition at line 462 of file descriptor.py.

◆ TYPE_FIXED32

int google.protobuf.descriptor.FieldDescriptor.TYPE_FIXED32 = 7
static

Definition at line 455 of file descriptor.py.

◆ TYPE_FIXED64

int google.protobuf.descriptor.FieldDescriptor.TYPE_FIXED64 = 6
static

Definition at line 454 of file descriptor.py.

◆ TYPE_FLOAT

int google.protobuf.descriptor.FieldDescriptor.TYPE_FLOAT = 2
static

Definition at line 450 of file descriptor.py.

◆ TYPE_GROUP

int google.protobuf.descriptor.FieldDescriptor.TYPE_GROUP = 10
static

Definition at line 458 of file descriptor.py.

◆ TYPE_INT32

int google.protobuf.descriptor.FieldDescriptor.TYPE_INT32 = 5
static

Definition at line 453 of file descriptor.py.

◆ TYPE_INT64

int google.protobuf.descriptor.FieldDescriptor.TYPE_INT64 = 3
static

Definition at line 451 of file descriptor.py.

◆ TYPE_MESSAGE

int google.protobuf.descriptor.FieldDescriptor.TYPE_MESSAGE = 11
static

Definition at line 459 of file descriptor.py.

◆ TYPE_SFIXED32

int google.protobuf.descriptor.FieldDescriptor.TYPE_SFIXED32 = 15
static

Definition at line 463 of file descriptor.py.

◆ TYPE_SFIXED64

int google.protobuf.descriptor.FieldDescriptor.TYPE_SFIXED64 = 16
static

Definition at line 464 of file descriptor.py.

◆ TYPE_SINT32

int google.protobuf.descriptor.FieldDescriptor.TYPE_SINT32 = 17
static

Definition at line 465 of file descriptor.py.

◆ TYPE_SINT64

int google.protobuf.descriptor.FieldDescriptor.TYPE_SINT64 = 18
static

Definition at line 466 of file descriptor.py.

◆ TYPE_STRING

int google.protobuf.descriptor.FieldDescriptor.TYPE_STRING = 9
static

Definition at line 457 of file descriptor.py.

◆ TYPE_UINT32

int google.protobuf.descriptor.FieldDescriptor.TYPE_UINT32 = 13
static

Definition at line 461 of file descriptor.py.

◆ TYPE_UINT64

int google.protobuf.descriptor.FieldDescriptor.TYPE_UINT64 = 4
static

Definition at line 452 of file descriptor.py.


The documentation for this class was generated from the following file:


libaditof
Author(s):
autogenerated on Wed May 21 2025 02:07:09