class_docstr: Descriptor for a file. Mimics the descriptor_pb2.FileDescriptorProto.
  
  Note that :attr:`enum_types_by_name`, :attr:`extensions_by_name`, and
  :attr:`dependencies` fields are only set by the
  :py:mod:`google.protobuf.message_factory` module, and not by the generated
  proto code.
  
  Attributes:
    name (str): Name of file, relative to root of source tree.
    package (str): Name of the package
    syntax (str): string indicating syntax of the file (can be "proto2" or
      "proto3")
    serialized_pb (bytes): Byte string of serialized
      :class:`descriptor_pb2.FileDescriptorProto`.
    dependencies (list[FileDescriptor]): List of other :class:`FileDescriptor`
      objects this :class:`FileDescriptor` depends on.
    public_dependencies (list[FileDescriptor]): A subset of
      :attr:`dependencies`, which were declared as "public".
    message_types_by_name (dict(str, Descriptor)): Mapping from message names
      to their :class:`Desctiptor`.
    enum_types_by_name (dict(str, EnumDescriptor)): Mapping from enum names to
      their :class:`EnumDescriptor`.
    extensions_by_name (dict(str, FieldDescriptor)): Mapping from extension
      names declared at file scope to their :class:`FieldDescriptor`.
    services_by_name (dict(str, ServiceDescriptor)): Mapping from services'
      names to their :class:`ServiceDescriptor`.
    pool (DescriptorPool): The pool this descriptor belongs to.  When not
      passed to the constructor, the global default pool is used.
class_docstr_tok: ["Descriptor","for","a","file",".","Mimics","the","descriptor_pb2.FileDescriptorProto",".","Note","that",":","attr",":","`","enum_types_by_name","`",",",":","attr",":","`","extensions_by_name","`",",","and",":","attr",":","`","dependencies","`","fields","are","only","set","by","the",":","py",":","mod",":","`","google.protobuf.message_factory","`","module",",","and","not","by","the","generated","proto","code",".","Attributes",":","name","(","str",")",":","Name","of","file",",","relative","to","root","of","source","tree",".","package","(","str",")",":","Name","of","the","package","syntax","(","str",")",":","string","indicating","syntax","of","the","file","(","can","be","``","proto2","''","or","``","proto3","''",")","serialized_pb","(","bytes",")",":","Byte","string","of","serialized",":","class",":","`","descriptor_pb2.FileDescriptorProto","`",".","dependencies","(","list","[","FileDescriptor","]",")",":","List","of","other",":","class",":","`","FileDescriptor","`","objects","this",":","class",":","`","FileDescriptor","`","depends","on",".","public_dependencies","(","list","[","FileDescriptor","]",")",":","A","subset","of",":","attr",":","`","dependencies","`",",","which","were","declared","as","``","public","''",".","message_types_by_name","(","dict","(","str",",","Descriptor",")",")",":","Mapping","from","message","names","to","their",":","class",":","`","Desctiptor","`",".","enum_types_by_name","(","dict","(","str",",","EnumDescriptor",")",")",":","Mapping","from","enum","names","to","their",":","class",":","`","EnumDescriptor","`",".","extensions_by_name","(","dict","(","str",",","FieldDescriptor",")",")",":","Mapping","from","extension","names","declared","at","file","scope","to","their",":","class",":","`","FieldDescriptor","`",".","services_by_name","(","dict","(","str",",","ServiceDescriptor",")",")",":","Mapping","from","services'","names","to","their",":","class",":","`","ServiceDescriptor","`",".","pool","(","DescriptorPool",")",":","The","pool","this","descriptor","belongs","to",".","When","not","passed","to","the","constructor",",","the","global","default","pool","is","used","."]
docstr: Constructor.
code: def __init__(
      self,
      name,
      package,
      options=None,
      serialized_options=None,
      serialized_pb=None,
      dependencies=None,
      public_dependencies=None,
      syntax=None,
      pool=None,
      create_key=None,
  ):
      """Constructor."""
      if create_key is not _internal_create_key:
          _Deprecated("FileDescriptor")
  
      super(FileDescriptor, self).__init__(
          options, serialized_options, "FileOptions"
      )
  
      if pool is None:
          from google.protobuf import descriptor_pool
  
          pool = descriptor_pool.Default()
      self.pool = pool
      self.message_types_by_name = {}
      self.name = name
      self.package = package
      self.syntax = syntax or "proto2"
      self.serialized_pb = serialized_pb
  
      self.enum_types_by_name = {}
      self.extensions_by_name = {}
      self.services_by_name = {}
      self.dependencies = dependencies or []
      self.public_dependencies = public_dependencies or []
  
imports: import threading
  import warnings
  import six
  from google.protobuf.internal import api_implementation
label_desc: Use image node_id 1 to create a new FileDescriptor object from inherited base classes: DescriptorBase with example: obj = FileDescriptor(name, package, options, serialized_options, serialized_pb, dependencies, public_dependencies, syntax, pool, create_key)