Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(854)

Side by Side Diff: third_party/protobuf/python/google/protobuf/descriptor.py

Issue 1983203003: Update third_party/protobuf to protobuf-v3.0.0-beta-3 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: owners Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Protocol Buffers - Google's data interchange format 1 # Protocol Buffers - Google's data interchange format
2 # Copyright 2008 Google Inc. All rights reserved. 2 # Copyright 2008 Google Inc. All rights reserved.
3 # https://developers.google.com/protocol-buffers/ 3 # https://developers.google.com/protocol-buffers/
4 # 4 #
5 # Redistribution and use in source and binary forms, with or without 5 # Redistribution and use in source and binary forms, with or without
6 # modification, are permitted provided that the following conditions are 6 # modification, are permitted provided that the following conditions are
7 # met: 7 # met:
8 # 8 #
9 # * Redistributions of source code must retain the above copyright 9 # * Redistributions of source code must retain the above copyright
10 # notice, this list of conditions and the following disclaimer. 10 # notice, this list of conditions and the following disclaimer.
(...skipping 765 matching lines...) Expand 10 before | Expand all | Expand 10 after
776 Note that enum_types_by_name, extensions_by_name, and dependencies 776 Note that enum_types_by_name, extensions_by_name, and dependencies
777 fields are only set by the message_factory module, and not by the 777 fields are only set by the message_factory module, and not by the
778 generated proto code. 778 generated proto code.
779 779
780 name: name of file, relative to root of source tree. 780 name: name of file, relative to root of source tree.
781 package: name of the package 781 package: name of the package
782 syntax: string indicating syntax of the file (can be "proto2" or "proto3") 782 syntax: string indicating syntax of the file (can be "proto2" or "proto3")
783 serialized_pb: (str) Byte string of serialized 783 serialized_pb: (str) Byte string of serialized
784 descriptor_pb2.FileDescriptorProto. 784 descriptor_pb2.FileDescriptorProto.
785 dependencies: List of other FileDescriptors this FileDescriptor depends on. 785 dependencies: List of other FileDescriptors this FileDescriptor depends on.
786 public_dependencies: A list of FileDescriptors, subset of the dependencies
787 above, which were declared as "public".
786 message_types_by_name: Dict of message names of their descriptors. 788 message_types_by_name: Dict of message names of their descriptors.
787 enum_types_by_name: Dict of enum names and their descriptors. 789 enum_types_by_name: Dict of enum names and their descriptors.
788 extensions_by_name: Dict of extension names and their descriptors. 790 extensions_by_name: Dict of extension names and their descriptors.
789 pool: the DescriptorPool this descriptor belongs to. When not passed to the 791 pool: the DescriptorPool this descriptor belongs to. When not passed to the
790 constructor, the global default pool is used. 792 constructor, the global default pool is used.
791 """ 793 """
792 794
793 if _USE_C_DESCRIPTORS: 795 if _USE_C_DESCRIPTORS:
794 _C_DESCRIPTOR_CLASS = _message.FileDescriptor 796 _C_DESCRIPTOR_CLASS = _message.FileDescriptor
795 797
796 def __new__(cls, name, package, options=None, serialized_pb=None, 798 def __new__(cls, name, package, options=None, serialized_pb=None,
797 dependencies=None, syntax=None, pool=None): 799 dependencies=None, public_dependencies=None,
800 syntax=None, pool=None):
798 # FileDescriptor() is called from various places, not only from generated 801 # FileDescriptor() is called from various places, not only from generated
799 # files, to register dynamic proto files and messages. 802 # files, to register dynamic proto files and messages.
800 if serialized_pb: 803 if serialized_pb:
801 # TODO(amauryfa): use the pool passed as argument. This will work only 804 # TODO(amauryfa): use the pool passed as argument. This will work only
802 # for C++-implemented DescriptorPools. 805 # for C++-implemented DescriptorPools.
803 return _message.default_pool.AddSerializedFile(serialized_pb) 806 return _message.default_pool.AddSerializedFile(serialized_pb)
804 else: 807 else:
805 return super(FileDescriptor, cls).__new__(cls) 808 return super(FileDescriptor, cls).__new__(cls)
806 809
807 def __init__(self, name, package, options=None, serialized_pb=None, 810 def __init__(self, name, package, options=None, serialized_pb=None,
808 dependencies=None, syntax=None, pool=None): 811 dependencies=None, public_dependencies=None,
812 syntax=None, pool=None):
809 """Constructor.""" 813 """Constructor."""
810 super(FileDescriptor, self).__init__(options, 'FileOptions') 814 super(FileDescriptor, self).__init__(options, 'FileOptions')
811 815
812 if pool is None: 816 if pool is None:
813 from google.protobuf import descriptor_pool 817 from google.protobuf import descriptor_pool
814 pool = descriptor_pool.Default() 818 pool = descriptor_pool.Default()
815 self.pool = pool 819 self.pool = pool
816 self.message_types_by_name = {} 820 self.message_types_by_name = {}
817 self.name = name 821 self.name = name
818 self.package = package 822 self.package = package
819 self.syntax = syntax or "proto2" 823 self.syntax = syntax or "proto2"
820 self.serialized_pb = serialized_pb 824 self.serialized_pb = serialized_pb
821 825
822 self.enum_types_by_name = {} 826 self.enum_types_by_name = {}
823 self.extensions_by_name = {} 827 self.extensions_by_name = {}
824 self.dependencies = (dependencies or []) 828 self.dependencies = (dependencies or [])
829 self.public_dependencies = (public_dependencies or [])
825 830
826 if (api_implementation.Type() == 'cpp' and 831 if (api_implementation.Type() == 'cpp' and
827 self.serialized_pb is not None): 832 self.serialized_pb is not None):
828 _message.default_pool.AddSerializedFile(self.serialized_pb) 833 _message.default_pool.AddSerializedFile(self.serialized_pb)
829 834
830 def CopyToProto(self, proto): 835 def CopyToProto(self, proto):
831 """Copies this to a descriptor_pb2.FileDescriptorProto. 836 """Copies this to a descriptor_pb2.FileDescriptorProto.
832 837
833 Args: 838 Args:
834 proto: An empty descriptor_pb2.FileDescriptorProto. 839 proto: An empty descriptor_pb2.FileDescriptorProto.
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
957 field_proto.number, field_proto.type, 962 field_proto.number, field_proto.type,
958 FieldDescriptor.ProtoTypeToCppProtoType(field_proto.type), 963 FieldDescriptor.ProtoTypeToCppProtoType(field_proto.type),
959 field_proto.label, None, nested_desc, enum_desc, None, False, None, 964 field_proto.label, None, nested_desc, enum_desc, None, False, None,
960 options=field_proto.options, has_default_value=False) 965 options=field_proto.options, has_default_value=False)
961 fields.append(field) 966 fields.append(field)
962 967
963 desc_name = '.'.join(full_message_name) 968 desc_name = '.'.join(full_message_name)
964 return Descriptor(desc_proto.name, desc_name, None, None, fields, 969 return Descriptor(desc_proto.name, desc_name, None, None, fields,
965 list(nested_types.values()), list(enum_types.values()), [], 970 list(nested_types.values()), list(enum_types.values()), [],
966 options=desc_proto.options) 971 options=desc_proto.options)
OLDNEW
« no previous file with comments | « third_party/protobuf/python/google/protobuf/__init__.py ('k') | third_party/protobuf/python/google/protobuf/descriptor_pb2.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698