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

Side by Side Diff: third_party/protobuf/python/google/protobuf/pyext/extension_dict.h

Issue 2495533002: third_party/protobuf: Update to HEAD (83d681ee2c) (Closed)
Patch Set: Make chrome settings proto generated file a component Created 4 years 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 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 PyObject* values; 79 PyObject* values;
80 } ExtensionDict; 80 } ExtensionDict;
81 81
82 extern PyTypeObject ExtensionDict_Type; 82 extern PyTypeObject ExtensionDict_Type;
83 83
84 namespace extension_dict { 84 namespace extension_dict {
85 85
86 // Builds an Extensions dict for a specific message. 86 // Builds an Extensions dict for a specific message.
87 ExtensionDict* NewExtensionDict(CMessage *parent); 87 ExtensionDict* NewExtensionDict(CMessage *parent);
88 88
89 // Gets the number of extension values in this ExtensionDict as a python object.
90 //
91 // Returns a new reference.
92 PyObject* len(ExtensionDict* self);
93
94 // Releases extensions referenced outside this dictionary to keep outside
95 // references alive.
96 //
97 // Returns 0 on success, -1 on failure.
98 int ReleaseExtension(ExtensionDict* self,
99 PyObject* extension,
100 const FieldDescriptor* descriptor);
101
102 // Gets an extension from the dict for the given extension descriptor.
103 //
104 // Returns a new reference.
105 PyObject* subscript(ExtensionDict* self, PyObject* key);
106
107 // Assigns a value to an extension in the dict. Can only be used for singular
108 // simple types.
109 //
110 // Returns 0 on success, -1 on failure.
111 int ass_subscript(ExtensionDict* self, PyObject* key, PyObject* value);
112
113 // Clears an extension from the dict. Will release the extension if there
114 // is still an external reference left to it.
115 //
116 // Returns None on success.
117 PyObject* ClearExtension(ExtensionDict* self,
118 PyObject* extension);
119
120 // Gets an extension from the dict given the extension name as opposed to
121 // descriptor.
122 //
123 // Returns a new reference.
124 PyObject* _FindExtensionByName(ExtensionDict* self, PyObject* name);
125
126 // Gets an extension from the dict given the extension field number as
127 // opposed to descriptor.
128 //
129 // Returns a new reference.
130 PyObject* _FindExtensionByNumber(ExtensionDict* self, PyObject* number);
131
132 } // namespace extension_dict 89 } // namespace extension_dict
133 } // namespace python 90 } // namespace python
134 } // namespace protobuf 91 } // namespace protobuf
135 92
136 } // namespace google 93 } // namespace google
137 #endif // GOOGLE_PROTOBUF_PYTHON_CPP_EXTENSION_DICT_H__ 94 #endif // GOOGLE_PROTOBUF_PYTHON_CPP_EXTENSION_DICT_H__
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698