game_machine 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (273) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +4 -0
  3. data/Gemfile.lock +72 -0
  4. data/Rakefile +38 -0
  5. data/bin/game_machine +79 -0
  6. data/config/cluster.conf +65 -0
  7. data/config/config.example.yml +93 -0
  8. data/config/game_messages.proto +45 -0
  9. data/config/messages.proto +339 -0
  10. data/config/regions.example.yml +9 -0
  11. data/config/standalone.conf +36 -0
  12. data/db/do_not_delete +0 -0
  13. data/game_machine.gemspec +38 -0
  14. data/games/example/boot.rb +6 -0
  15. data/games/example/data/game_data.yml +13 -0
  16. data/games/example/lib/aggressive_npc.rb +176 -0
  17. data/games/example/lib/authentication_handler.rb +69 -0
  18. data/games/example/lib/chatbot.rb +61 -0
  19. data/games/example/lib/combat_controller.rb +145 -0
  20. data/games/example/lib/example_controller.rb +21 -0
  21. data/games/example/lib/game.rb +85 -0
  22. data/games/example/lib/models/attack.rb +9 -0
  23. data/games/example/lib/models/combat_update.rb +11 -0
  24. data/games/example/lib/models/player_command.rb +7 -0
  25. data/games/example/lib/models/user.rb +11 -0
  26. data/games/example/lib/models/vitals.rb +17 -0
  27. data/games/example/lib/npc.rb +111 -0
  28. data/games/example/lib/npc_group.rb +42 -0
  29. data/games/example/lib/npc_movement.rb +116 -0
  30. data/games/example/lib/player_manager.rb +58 -0
  31. data/games/example/lib/player_register.rb +80 -0
  32. data/games/example/lib/tracking_handler.rb +17 -0
  33. data/games/example/lib/zone_manager.rb +57 -0
  34. data/games/preload.rb +8 -0
  35. data/integration_tests/basic_spec.rb +68 -0
  36. data/integration_tests/bot_spec.rb +18 -0
  37. data/integration_tests/chat_spec.rb +45 -0
  38. data/integration_tests/distributed_spec.rb +34 -0
  39. data/integration_tests/entity_tracking_spec.rb +48 -0
  40. data/integration_tests/mono_spec.rb +16 -0
  41. data/integration_tests/objectdb_spec.rb +55 -0
  42. data/integration_tests/tcp_client_spec.rb +71 -0
  43. data/integration_tests/udp_client_spec.rb +61 -0
  44. data/integration_tests/udp_spec.rb +20 -0
  45. data/integration_tests/udt_client_spec.rb +23 -0
  46. data/integration_tests/udt_spec.rb +31 -0
  47. data/java/.gitignore +1 -0
  48. data/java/build.gradle +93 -0
  49. data/java/component.erb +396 -0
  50. data/java/gradle.properties +6 -0
  51. data/java/gradle/wrapper/gradle-wrapper.jar +0 -0
  52. data/java/gradle/wrapper/gradle-wrapper.properties +6 -0
  53. data/java/gradlew +164 -0
  54. data/java/gradlew.bat +90 -0
  55. data/java/local_lib/protostuff-compiler-1.0.7-jarjar.jar +0 -0
  56. data/java/settings.gradle +2 -0
  57. data/java/src/main/java/com/game_machine/core/ActorFactory.java +25 -0
  58. data/java/src/main/java/com/game_machine/core/ActorUtil.java +39 -0
  59. data/java/src/main/java/com/game_machine/core/CommandProxy.java +9 -0
  60. data/java/src/main/java/com/game_machine/core/EntitySerializer.java +66 -0
  61. data/java/src/main/java/com/game_machine/core/EventStreamHandler.java +43 -0
  62. data/java/src/main/java/com/game_machine/core/GameMachineLoader.java +25 -0
  63. data/java/src/main/java/com/game_machine/core/Grid.java +195 -0
  64. data/java/src/main/java/com/game_machine/core/GridValue.java +30 -0
  65. data/java/src/main/java/com/game_machine/core/IActorFactory.java +7 -0
  66. data/java/src/main/java/com/game_machine/core/NetMessage.java +28 -0
  67. data/java/src/main/java/com/game_machine/core/UdpServer.java +97 -0
  68. data/java/src/main/java/com/game_machine/core/UdpServerHandler.java +90 -0
  69. data/java/src/main/resources/game_machine.java.stg +738 -0
  70. data/java/src/main/resources/logback.xml +14 -0
  71. data/java/src/main/resources/logging.properties +3 -0
  72. data/java/src/main/resources/protostuff.properties +7 -0
  73. data/lib/game_machine.rb +85 -0
  74. data/lib/game_machine/actor.rb +7 -0
  75. data/lib/game_machine/actor/base.rb +184 -0
  76. data/lib/game_machine/actor/builder.rb +108 -0
  77. data/lib/game_machine/actor/development.rb +31 -0
  78. data/lib/game_machine/actor/factory.rb +35 -0
  79. data/lib/game_machine/actor/mono_actor.rb +89 -0
  80. data/lib/game_machine/actor/ref.rb +81 -0
  81. data/lib/game_machine/actor/reloadable.rb +98 -0
  82. data/lib/game_machine/actor/system.rb +32 -0
  83. data/lib/game_machine/akka.rb +98 -0
  84. data/lib/game_machine/app_config.rb +49 -0
  85. data/lib/game_machine/application.rb +181 -0
  86. data/lib/game_machine/auth_handlers/base.rb +21 -0
  87. data/lib/game_machine/auth_handlers/public.rb +34 -0
  88. data/lib/game_machine/bot/chat.rb +66 -0
  89. data/lib/game_machine/bot/client.rb +54 -0
  90. data/lib/game_machine/client_manager.rb +204 -0
  91. data/lib/game_machine/clients.rb +4 -0
  92. data/lib/game_machine/clients/client.rb +45 -0
  93. data/lib/game_machine/clients/tcp_client.rb +25 -0
  94. data/lib/game_machine/clients/test_client.rb +151 -0
  95. data/lib/game_machine/clients/udp_client.rb +25 -0
  96. data/lib/game_machine/clients/udt_client.rb +34 -0
  97. data/lib/game_machine/cluster_monitor.rb +115 -0
  98. data/lib/game_machine/commands.rb +23 -0
  99. data/lib/game_machine/commands/base.rb +21 -0
  100. data/lib/game_machine/commands/chat_commands.rb +88 -0
  101. data/lib/game_machine/commands/datastore_commands.rb +60 -0
  102. data/lib/game_machine/commands/grid_commands.rb +35 -0
  103. data/lib/game_machine/commands/message_helper.rb +25 -0
  104. data/lib/game_machine/commands/misc_commands.rb +29 -0
  105. data/lib/game_machine/commands/navigation_commands.rb +24 -0
  106. data/lib/game_machine/commands/player_commands.rb +28 -0
  107. data/lib/game_machine/commands/proxy.rb +16 -0
  108. data/lib/game_machine/console.rb +3 -0
  109. data/lib/game_machine/console/build.rb +74 -0
  110. data/lib/game_machine/console/install.rb +92 -0
  111. data/lib/game_machine/console/server.rb +120 -0
  112. data/lib/game_machine/data_store.rb +52 -0
  113. data/lib/game_machine/data_stores/couchbase.rb +18 -0
  114. data/lib/game_machine/data_stores/mapdb.rb +49 -0
  115. data/lib/game_machine/data_stores/memory.rb +35 -0
  116. data/lib/game_machine/data_stores/redis.rb +46 -0
  117. data/lib/game_machine/endpoints.rb +6 -0
  118. data/lib/game_machine/endpoints/mono_gateway.rb +87 -0
  119. data/lib/game_machine/endpoints/tcp.rb +51 -0
  120. data/lib/game_machine/endpoints/tcp_handler.rb +75 -0
  121. data/lib/game_machine/endpoints/udp.rb +88 -0
  122. data/lib/game_machine/endpoints/udp_incoming.rb +113 -0
  123. data/lib/game_machine/endpoints/udp_outgoing.rb +46 -0
  124. data/lib/game_machine/game_loader.rb +46 -0
  125. data/lib/game_machine/game_systems.rb +14 -0
  126. data/lib/game_machine/game_systems/agents/controller.rb +118 -0
  127. data/lib/game_machine/game_systems/chat.rb +256 -0
  128. data/lib/game_machine/game_systems/chat_manager.rb +108 -0
  129. data/lib/game_machine/game_systems/chat_topic.rb +36 -0
  130. data/lib/game_machine/game_systems/devnull.rb +13 -0
  131. data/lib/game_machine/game_systems/entity_loader.rb +12 -0
  132. data/lib/game_machine/game_systems/entity_tracking.rb +133 -0
  133. data/lib/game_machine/game_systems/local_echo.rb +16 -0
  134. data/lib/game_machine/game_systems/objectdb_proxy.rb +61 -0
  135. data/lib/game_machine/game_systems/private_chat.rb +20 -0
  136. data/lib/game_machine/game_systems/region_manager.rb +91 -0
  137. data/lib/game_machine/game_systems/region_service.rb +94 -0
  138. data/lib/game_machine/game_systems/region_settings.rb +13 -0
  139. data/lib/game_machine/game_systems/remote_echo.rb +14 -0
  140. data/lib/game_machine/game_systems/stress_test.rb +21 -0
  141. data/lib/game_machine/grid.rb +60 -0
  142. data/lib/game_machine/grid_replicator.rb +31 -0
  143. data/lib/game_machine/handlers/authentication.rb +55 -0
  144. data/lib/game_machine/handlers/game.rb +63 -0
  145. data/lib/game_machine/handlers/request.rb +80 -0
  146. data/lib/game_machine/hashring.rb +48 -0
  147. data/lib/game_machine/helpers/game_message.rb +159 -0
  148. data/lib/game_machine/helpers/state_machine.rb +29 -0
  149. data/lib/game_machine/java_lib.rb +51 -0
  150. data/lib/game_machine/logger.rb +39 -0
  151. data/lib/game_machine/message_buffer.rb +58 -0
  152. data/lib/game_machine/message_queue.rb +63 -0
  153. data/lib/game_machine/model.rb +125 -0
  154. data/lib/game_machine/models.rb +3 -0
  155. data/lib/game_machine/models/player_status_update.rb +8 -0
  156. data/lib/game_machine/models/region.rb +9 -0
  157. data/lib/game_machine/mono_server.rb +20 -0
  158. data/lib/game_machine/navigation.rb +4 -0
  159. data/lib/game_machine/navigation/detour.rb +20 -0
  160. data/lib/game_machine/navigation/detour_navmesh.rb +53 -0
  161. data/lib/game_machine/navigation/detour_path.rb +53 -0
  162. data/lib/game_machine/navigation/path.rb +31 -0
  163. data/lib/game_machine/object_db.rb +67 -0
  164. data/lib/game_machine/protobuf.rb +6 -0
  165. data/lib/game_machine/protobuf/game_messages.rb +24 -0
  166. data/lib/game_machine/protobuf/generate.rb +113 -0
  167. data/lib/game_machine/protobuf_extensions/entity_helper.rb +11 -0
  168. data/lib/game_machine/reloadable_monitor.rb +26 -0
  169. data/lib/game_machine/restart_watcher.rb +17 -0
  170. data/lib/game_machine/ruby_extensions/nilclass.rb +10 -0
  171. data/lib/game_machine/ruby_extensions/string.rb +17 -0
  172. data/lib/game_machine/scheduler.rb +23 -0
  173. data/lib/game_machine/securerandom.rb +6 -0
  174. data/lib/game_machine/settings.rb +11 -0
  175. data/lib/game_machine/system_monitor.rb +19 -0
  176. data/lib/game_machine/system_stats.rb +24 -0
  177. data/lib/game_machine/uniqueid.rb +23 -0
  178. data/lib/game_machine/vector.rb +95 -0
  179. data/lib/game_machine/version.rb +3 -0
  180. data/lib/game_machine/write_behind_cache.rb +164 -0
  181. data/mono/bin/csharp/common.xslt +109 -0
  182. data/mono/bin/csharp/csharp.xslt +628 -0
  183. data/mono/bin/csharp/descriptor.proto +533 -0
  184. data/mono/bin/csharp/protobuf-net.dll +0 -0
  185. data/mono/bin/csharp/protobuf-net.pdb +0 -0
  186. data/mono/bin/csharp/protobuf-net.xml +2879 -0
  187. data/mono/bin/csharp/protogen.exe.config +3 -0
  188. data/mono/bin/csharp/protogen.pdb +0 -0
  189. data/mono/bin/csharp/protogen_csharp.exe +0 -0
  190. data/mono/bin/csharp/vb.xslt +745 -0
  191. data/mono/bin/csharp/xml.xslt +26 -0
  192. data/mono/server/Makefile +6 -0
  193. data/mono/server/NLog.config +12 -0
  194. data/mono/server/NLog.dll +0 -0
  195. data/mono/server/actor.cs +37 -0
  196. data/mono/server/build.bat +3 -0
  197. data/mono/server/cscompmgd.dll +0 -0
  198. data/mono/server/iactor.cs +11 -0
  199. data/mono/server/message_router.cs +67 -0
  200. data/mono/server/message_util.cs +29 -0
  201. data/mono/server/messages.cs +1888 -0
  202. data/mono/server/protobuf-net.dll +0 -0
  203. data/mono/server/proxy_client.cs +73 -0
  204. data/mono/server/proxy_server.cs +30 -0
  205. data/mono/server/test_actor.cs +33 -0
  206. data/pathfinding/bin/premake4 +0 -0
  207. data/pathfinding/include/mesh_loader.h +28 -0
  208. data/pathfinding/include/pathfind.h +167 -0
  209. data/pathfinding/main.cpp +39 -0
  210. data/pathfinding/mesh_loader.cpp +108 -0
  211. data/pathfinding/pathfind.cpp +174 -0
  212. data/pathfinding/pathfinder.cs +66 -0
  213. data/pathfinding/premake4.lua +109 -0
  214. data/script/server.sh +109 -0
  215. data/script/watch.sh +11 -0
  216. data/spec/actor/actor_spec.rb +73 -0
  217. data/spec/actor/builder_spec.rb +56 -0
  218. data/spec/actor/ref_spec.rb +83 -0
  219. data/spec/application_spec.rb +7 -0
  220. data/spec/client_manager_spec.rb +171 -0
  221. data/spec/commands/chat_commands_spec.rb +38 -0
  222. data/spec/commands/datastore_commands_spec.rb +91 -0
  223. data/spec/commands/grid_commands_spec.rb +37 -0
  224. data/spec/commands/navigation_commands_spec.rb +51 -0
  225. data/spec/commands/player_commands_spec.rb +48 -0
  226. data/spec/commands_spec.rb +38 -0
  227. data/spec/data_stores/mapdb_spec.rb +46 -0
  228. data/spec/data_stores/redis_spec.rb +44 -0
  229. data/spec/game_systems/agents/controller_spec.rb +84 -0
  230. data/spec/game_systems/agents/test_agent.rb +10 -0
  231. data/spec/game_systems/agents/test_agent_config.rb +29 -0
  232. data/spec/game_systems/chat_manager_spec.rb +66 -0
  233. data/spec/game_systems/chat_spec.rb +187 -0
  234. data/spec/game_systems/entity_tracking_spec.rb +64 -0
  235. data/spec/game_systems/region_manager_spec.rb +138 -0
  236. data/spec/grid_spec.rb +37 -0
  237. data/spec/handlers/authentication_spec.rb +36 -0
  238. data/spec/handlers/game_spec.rb +49 -0
  239. data/spec/handlers/request_spec.rb +65 -0
  240. data/spec/hashring_spec.rb +59 -0
  241. data/spec/integration_helper.rb +120 -0
  242. data/spec/java_grid_spec.rb +89 -0
  243. data/spec/message_buffer_spec.rb +67 -0
  244. data/spec/message_expectations.rb +47 -0
  245. data/spec/message_queue_spec.rb +23 -0
  246. data/spec/misc_spec.rb +71 -0
  247. data/spec/model_spec.rb +103 -0
  248. data/spec/mono_spec.rb +36 -0
  249. data/spec/mono_test.rb +18 -0
  250. data/spec/navigation/detour_navmesh_spec.rb +34 -0
  251. data/spec/navigation/detour_path_spec.rb +25 -0
  252. data/spec/spec_helper.rb +40 -0
  253. data/spec/udp_server_spec.rb +10 -0
  254. data/spec/write_behind_cache_spec.rb +109 -0
  255. data/web/app.rb +131 -0
  256. data/web/config/trinidad.yml +4 -0
  257. data/web/controllers/auth_controller.rb +19 -0
  258. data/web/controllers/base_controller.rb +16 -0
  259. data/web/controllers/index_controller.rb +7 -0
  260. data/web/controllers/log_controller.rb +47 -0
  261. data/web/controllers/messages_controller.rb +59 -0
  262. data/web/controllers/player_register_controller.rb +15 -0
  263. data/web/log/development.log +1339 -0
  264. data/web/tmp/restart.txt +0 -0
  265. data/web/views/game_messages.haml +45 -0
  266. data/web/views/index.haml +6 -0
  267. data/web/views/layout.haml +41 -0
  268. data/web/views/logs.haml +32 -0
  269. data/web/views/player_register.haml +22 -0
  270. data/web/views/player_registered.haml +2 -0
  271. data/web/views/register_layout.haml +22 -0
  272. data/web/views/restart.haml +35 -0
  273. metadata +576 -0
Binary file
Binary file
@@ -0,0 +1,2879 @@
1
+ <?xml version="1.0"?>
2
+ <doc>
3
+ <assembly>
4
+ <name>protobuf-net</name>
5
+ </assembly>
6
+ <members>
7
+ <member name="T:ProtoBuf.BclHelpers">
8
+ <summary>
9
+ Provides support for common .NET types that do not have a direct representation
10
+ in protobuf, using the definitions from bcl.proto
11
+ </summary>
12
+ </member>
13
+ <member name="M:ProtoBuf.BclHelpers.GetUninitializedObject(System.Type)">
14
+ <summary>
15
+ Creates a new instance of the specified type, bypassing the constructor.
16
+ </summary>
17
+ <param name="type">The type to create</param>
18
+ <returns>The new instance</returns>
19
+ <exception cref="T:System.NotSupportedException">If the platform does not support constructor-skipping</exception>
20
+ </member>
21
+ <member name="M:ProtoBuf.BclHelpers.WriteTimeSpan(System.TimeSpan,ProtoBuf.ProtoWriter)">
22
+ <summary>
23
+ Writes a TimeSpan to a protobuf stream
24
+ </summary>
25
+ </member>
26
+ <member name="M:ProtoBuf.BclHelpers.ReadTimeSpan(ProtoBuf.ProtoReader)">
27
+ <summary>
28
+ Parses a TimeSpan from a protobuf stream
29
+ </summary>
30
+ </member>
31
+ <member name="M:ProtoBuf.BclHelpers.ReadDateTime(ProtoBuf.ProtoReader)">
32
+ <summary>
33
+ Parses a DateTime from a protobuf stream
34
+ </summary>
35
+ </member>
36
+ <member name="M:ProtoBuf.BclHelpers.WriteDateTime(System.DateTime,ProtoBuf.ProtoWriter)">
37
+ <summary>
38
+ Writes a DateTime to a protobuf stream
39
+ </summary>
40
+ </member>
41
+ <member name="M:ProtoBuf.BclHelpers.ReadDecimal(ProtoBuf.ProtoReader)">
42
+ <summary>
43
+ Parses a decimal from a protobuf stream
44
+ </summary>
45
+ </member>
46
+ <member name="M:ProtoBuf.BclHelpers.WriteDecimal(System.Decimal,ProtoBuf.ProtoWriter)">
47
+ <summary>
48
+ Writes a decimal to a protobuf stream
49
+ </summary>
50
+ </member>
51
+ <member name="M:ProtoBuf.BclHelpers.WriteGuid(System.Guid,ProtoBuf.ProtoWriter)">
52
+ <summary>
53
+ Writes a Guid to a protobuf stream
54
+ </summary>
55
+ </member>
56
+ <member name="M:ProtoBuf.BclHelpers.ReadGuid(ProtoBuf.ProtoReader)">
57
+ <summary>
58
+ Parses a Guid from a protobuf stream
59
+ </summary>
60
+ </member>
61
+ <member name="M:ProtoBuf.BclHelpers.ReadNetObject(System.Object,ProtoBuf.ProtoReader,System.Int32,System.Type,ProtoBuf.BclHelpers.NetObjectOptions)">
62
+ <summary>
63
+ Reads an *implementation specific* bundled .NET object, including (as options) type-metadata, identity/re-use, etc.
64
+ </summary>
65
+ </member>
66
+ <member name="M:ProtoBuf.BclHelpers.WriteNetObject(System.Object,ProtoBuf.ProtoWriter,System.Int32,ProtoBuf.BclHelpers.NetObjectOptions)">
67
+ <summary>
68
+ Writes an *implementation specific* bundled .NET object, including (as options) type-metadata, identity/re-use, etc.
69
+ </summary>
70
+ </member>
71
+ <member name="T:ProtoBuf.BclHelpers.NetObjectOptions">
72
+ <summary>
73
+ Optional behaviours that introduce .NET-specific functionality
74
+ </summary>
75
+ </member>
76
+ <member name="F:ProtoBuf.BclHelpers.NetObjectOptions.None">
77
+ <summary>
78
+ No special behaviour
79
+ </summary>
80
+ </member>
81
+ <member name="F:ProtoBuf.BclHelpers.NetObjectOptions.AsReference">
82
+ <summary>
83
+ Enables full object-tracking/full-graph support.
84
+ </summary>
85
+ </member>
86
+ <member name="F:ProtoBuf.BclHelpers.NetObjectOptions.DynamicType">
87
+ <summary>
88
+ Embeds the type information into the stream, allowing usage with types not known in advance.
89
+ </summary>
90
+ </member>
91
+ <member name="F:ProtoBuf.BclHelpers.NetObjectOptions.UseConstructor">
92
+ <summary>
93
+ If false, the constructor for the type is bypassed during deserialization, meaning any field initializers
94
+ or other initialization code is skipped.
95
+ </summary>
96
+ </member>
97
+ <member name="F:ProtoBuf.BclHelpers.NetObjectOptions.LateSet">
98
+ <summary>
99
+ Should the object index be reserved, rather than creating an object promptly
100
+ </summary>
101
+ </member>
102
+ <member name="T:ProtoBuf.BufferExtension">
103
+ <summary>
104
+ Provides a simple buffer-based implementation of an <see cref="T:ProtoBuf.IExtension">extension</see> object.
105
+ </summary>
106
+ </member>
107
+ <member name="T:ProtoBuf.IExtension">
108
+ <summary>
109
+ Provides addition capability for supporting unexpected fields during
110
+ protocol-buffer serialization/deserialization. This allows for loss-less
111
+ round-trip/merge, even when the data is not fully understood.
112
+ </summary>
113
+ </member>
114
+ <member name="M:ProtoBuf.IExtension.BeginAppend">
115
+ <summary>
116
+ Requests a stream into which any unexpected fields can be persisted.
117
+ </summary>
118
+ <returns>A new stream suitable for storing data.</returns>
119
+ </member>
120
+ <member name="M:ProtoBuf.IExtension.EndAppend(System.IO.Stream,System.Boolean)">
121
+ <summary>
122
+ Indicates that all unexpected fields have now been stored. The
123
+ implementing class is responsible for closing the stream. If
124
+ "commit" is not true the data may be discarded.
125
+ </summary>
126
+ <param name="stream">The stream originally obtained by BeginAppend.</param>
127
+ <param name="commit">True if the append operation completed successfully.</param>
128
+ </member>
129
+ <member name="M:ProtoBuf.IExtension.BeginQuery">
130
+ <summary>
131
+ Requests a stream of the unexpected fields previously stored.
132
+ </summary>
133
+ <returns>A prepared stream of the unexpected fields.</returns>
134
+ </member>
135
+ <member name="M:ProtoBuf.IExtension.EndQuery(System.IO.Stream)">
136
+ <summary>
137
+ Indicates that all unexpected fields have now been read. The
138
+ implementing class is responsible for closing the stream.
139
+ </summary>
140
+ <param name="stream">The stream originally obtained by BeginQuery.</param>
141
+ </member>
142
+ <member name="M:ProtoBuf.IExtension.GetLength">
143
+ <summary>
144
+ Requests the length of the raw binary stream; this is used
145
+ when serializing sub-entities to indicate the expected size.
146
+ </summary>
147
+ <returns>The length of the binary stream representing unexpected data.</returns>
148
+ </member>
149
+ <member name="T:ProtoBuf.ProtoBeforeSerializationAttribute">
150
+ <summary>Specifies a method on the root-contract in an hierarchy to be invoked before serialization.</summary>
151
+ </member>
152
+ <member name="T:ProtoBuf.ProtoAfterSerializationAttribute">
153
+ <summary>Specifies a method on the root-contract in an hierarchy to be invoked after serialization.</summary>
154
+ </member>
155
+ <member name="T:ProtoBuf.ProtoBeforeDeserializationAttribute">
156
+ <summary>Specifies a method on the root-contract in an hierarchy to be invoked before deserialization.</summary>
157
+ </member>
158
+ <member name="T:ProtoBuf.ProtoAfterDeserializationAttribute">
159
+ <summary>Specifies a method on the root-contract in an hierarchy to be invoked after deserialization.</summary>
160
+ </member>
161
+ <member name="M:ProtoBuf.Compiler.CompilerContext.LoadNullRef">
162
+ <summary>
163
+ Pushes a null reference onto the stack. Note that this should only
164
+ be used to return a null (or set a variable to null); for null-tests
165
+ use BranchIfTrue / BranchIfFalse.
166
+ </summary>
167
+ </member>
168
+ <member name="M:ProtoBuf.Compiler.CompilerContext.UsingBlock.#ctor(ProtoBuf.Compiler.CompilerContext,ProtoBuf.Compiler.Local)">
169
+ <summary>
170
+ Creates a new "using" block (equivalent) around a variable;
171
+ the variable must exist, and note that (unlike in C#) it is
172
+ the variables *final* value that gets disposed. If you need
173
+ *original* disposal, copy your variable first.
174
+
175
+ It is the callers responsibility to ensure that the variable's
176
+ scope fully-encapsulates the "using"; if not, the variable
177
+ may be re-used (and thus re-assigned) unexpectedly.
178
+ </summary>
179
+ </member>
180
+ <member name="T:ProtoBuf.DataFormat">
181
+ <summary>
182
+ Sub-format to use when serializing/deserializing data
183
+ </summary>
184
+ </member>
185
+ <member name="F:ProtoBuf.DataFormat.Default">
186
+ <summary>
187
+ Uses the default encoding for the data-type.
188
+ </summary>
189
+ </member>
190
+ <member name="F:ProtoBuf.DataFormat.ZigZag">
191
+ <summary>
192
+ When applied to signed integer-based data (including Decimal), this
193
+ indicates that zigzag variant encoding will be used. This means that values
194
+ with small magnitude (regardless of sign) take a small amount
195
+ of space to encode.
196
+ </summary>
197
+ </member>
198
+ <member name="F:ProtoBuf.DataFormat.TwosComplement">
199
+ <summary>
200
+ When applied to signed integer-based data (including Decimal), this
201
+ indicates that two's-complement variant encoding will be used.
202
+ This means that any -ve number will take 10 bytes (even for 32-bit),
203
+ so should only be used for compatibility.
204
+ </summary>
205
+ </member>
206
+ <member name="F:ProtoBuf.DataFormat.FixedSize">
207
+ <summary>
208
+ When applied to signed integer-based data (including Decimal), this
209
+ indicates that a fixed amount of space will be used.
210
+ </summary>
211
+ </member>
212
+ <member name="F:ProtoBuf.DataFormat.Group">
213
+ <summary>
214
+ When applied to a sub-message, indicates that the value should be treated
215
+ as group-delimited.
216
+ </summary>
217
+ </member>
218
+ <member name="T:ProtoBuf.Extensible">
219
+ <summary>
220
+ Simple base class for supporting unexpected fields allowing
221
+ for loss-less round-tips/merge, even if the data is not understod.
222
+ The additional fields are (by default) stored in-memory in a buffer.
223
+ </summary>
224
+ <remarks>As an example of an alternative implementation, you might
225
+ choose to use the file system (temporary files) as the back-end, tracking
226
+ only the paths [such an object would ideally be IDisposable and use
227
+ a finalizer to ensure that the files are removed].</remarks>
228
+ <seealso cref="T:ProtoBuf.IExtensible"/>
229
+ </member>
230
+ <member name="T:ProtoBuf.IExtensible">
231
+ <summary>
232
+ Indicates that the implementing type has support for protocol-buffer
233
+ <see cref="T:ProtoBuf.IExtension">extensions</see>.
234
+ </summary>
235
+ <remarks>Can be implemented by deriving from Extensible.</remarks>
236
+ </member>
237
+ <member name="M:ProtoBuf.IExtensible.GetExtensionObject(System.Boolean)">
238
+ <summary>
239
+ Retrieves the <see cref="T:ProtoBuf.IExtension">extension</see> object for the current
240
+ instance, optionally creating it if it does not already exist.
241
+ </summary>
242
+ <param name="createIfMissing">Should a new extension object be
243
+ created if it does not already exist?</param>
244
+ <returns>The extension object if it exists (or was created), or null
245
+ if the extension object does not exist or is not available.</returns>
246
+ <remarks>The <c>createIfMissing</c> argument is false during serialization,
247
+ and true during deserialization upon encountering unexpected fields.</remarks>
248
+ </member>
249
+ <member name="M:ProtoBuf.Extensible.GetExtensionObject(System.Boolean)">
250
+ <summary>
251
+ Retrieves the <see cref="T:ProtoBuf.IExtension">extension</see> object for the current
252
+ instance, optionally creating it if it does not already exist.
253
+ </summary>
254
+ <param name="createIfMissing">Should a new extension object be
255
+ created if it does not already exist?</param>
256
+ <returns>The extension object if it exists (or was created), or null
257
+ if the extension object does not exist or is not available.</returns>
258
+ <remarks>The <c>createIfMissing</c> argument is false during serialization,
259
+ and true during deserialization upon encountering unexpected fields.</remarks>
260
+ </member>
261
+ <member name="M:ProtoBuf.Extensible.GetExtensionObject(ProtoBuf.IExtension@,System.Boolean)">
262
+ <summary>
263
+ Provides a simple, default implementation for <see cref="T:ProtoBuf.IExtension">extension</see> support,
264
+ optionally creating it if it does not already exist. Designed to be called by
265
+ classes implementing <see cref="T:ProtoBuf.IExtensible"/>.
266
+ </summary>
267
+ <param name="createIfMissing">Should a new extension object be
268
+ created if it does not already exist?</param>
269
+ <param name="extensionObject">The extension field to check (and possibly update).</param>
270
+ <returns>The extension object if it exists (or was created), or null
271
+ if the extension object does not exist or is not available.</returns>
272
+ <remarks>The <c>createIfMissing</c> argument is false during serialization,
273
+ and true during deserialization upon encountering unexpected fields.</remarks>
274
+ </member>
275
+ <member name="M:ProtoBuf.Extensible.AppendValue``1(ProtoBuf.IExtensible,System.Int32,``0)">
276
+ <summary>
277
+ Appends the value as an additional (unexpected) data-field for the instance.
278
+ Note that for non-repeated sub-objects, this equates to a merge operation;
279
+ for repeated sub-objects this adds a new instance to the set; for simple
280
+ values the new value supercedes the old value.
281
+ </summary>
282
+ <remarks>Note that appending a value does not remove the old value from
283
+ the stream; avoid repeatedly appending values for the same field.</remarks>
284
+ <typeparam name="TValue">The type of the value to append.</typeparam>
285
+ <param name="instance">The extensible object to append the value to.</param>
286
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
287
+ <param name="value">The value to append.</param>
288
+ </member>
289
+ <member name="M:ProtoBuf.Extensible.AppendValue``1(ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat,``0)">
290
+ <summary>
291
+ Appends the value as an additional (unexpected) data-field for the instance.
292
+ Note that for non-repeated sub-objects, this equates to a merge operation;
293
+ for repeated sub-objects this adds a new instance to the set; for simple
294
+ values the new value supercedes the old value.
295
+ </summary>
296
+ <remarks>Note that appending a value does not remove the old value from
297
+ the stream; avoid repeatedly appending values for the same field.</remarks>
298
+ <typeparam name="TValue">The data-type of the field.</typeparam>
299
+ <param name="format">The data-format to use when encoding the value.</param>
300
+ <param name="instance">The extensible object to append the value to.</param>
301
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
302
+ <param name="value">The value to append.</param>
303
+ </member>
304
+ <member name="M:ProtoBuf.Extensible.GetValue``1(ProtoBuf.IExtensible,System.Int32)">
305
+ <summary>
306
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
307
+ The value returned is the composed value after merging any duplicated content; if the
308
+ value is "repeated" (a list), then use GetValues instead.
309
+ </summary>
310
+ <typeparam name="TValue">The data-type of the field.</typeparam>
311
+ <param name="instance">The extensible object to obtain the value from.</param>
312
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
313
+ <returns>The effective value of the field, or the default value if not found.</returns>
314
+ </member>
315
+ <member name="M:ProtoBuf.Extensible.GetValue``1(ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat)">
316
+ <summary>
317
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
318
+ The value returned is the composed value after merging any duplicated content; if the
319
+ value is "repeated" (a list), then use GetValues instead.
320
+ </summary>
321
+ <typeparam name="TValue">The data-type of the field.</typeparam>
322
+ <param name="instance">The extensible object to obtain the value from.</param>
323
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
324
+ <param name="format">The data-format to use when decoding the value.</param>
325
+ <returns>The effective value of the field, or the default value if not found.</returns>
326
+ </member>
327
+ <member name="M:ProtoBuf.Extensible.TryGetValue``1(ProtoBuf.IExtensible,System.Int32,``0@)">
328
+ <summary>
329
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
330
+ The value returned (in "value") is the composed value after merging any duplicated content;
331
+ if the value is "repeated" (a list), then use GetValues instead.
332
+ </summary>
333
+ <typeparam name="TValue">The data-type of the field.</typeparam>
334
+ <param name="value">The effective value of the field, or the default value if not found.</param>
335
+ <param name="instance">The extensible object to obtain the value from.</param>
336
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
337
+ <returns>True if data for the field was present, false otherwise.</returns>
338
+ </member>
339
+ <member name="M:ProtoBuf.Extensible.TryGetValue``1(ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat,``0@)">
340
+ <summary>
341
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
342
+ The value returned (in "value") is the composed value after merging any duplicated content;
343
+ if the value is "repeated" (a list), then use GetValues instead.
344
+ </summary>
345
+ <typeparam name="TValue">The data-type of the field.</typeparam>
346
+ <param name="value">The effective value of the field, or the default value if not found.</param>
347
+ <param name="instance">The extensible object to obtain the value from.</param>
348
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
349
+ <param name="format">The data-format to use when decoding the value.</param>
350
+ <returns>True if data for the field was present, false otherwise.</returns>
351
+ </member>
352
+ <member name="M:ProtoBuf.Extensible.TryGetValue``1(ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat,System.Boolean,``0@)">
353
+ <summary>
354
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
355
+ The value returned (in "value") is the composed value after merging any duplicated content;
356
+ if the value is "repeated" (a list), then use GetValues instead.
357
+ </summary>
358
+ <typeparam name="TValue">The data-type of the field.</typeparam>
359
+ <param name="value">The effective value of the field, or the default value if not found.</param>
360
+ <param name="instance">The extensible object to obtain the value from.</param>
361
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
362
+ <param name="format">The data-format to use when decoding the value.</param>
363
+ <param name="allowDefinedTag">Allow tags that are present as part of the definition; for example, to query unknown enum values.</param>
364
+ <returns>True if data for the field was present, false otherwise.</returns>
365
+ </member>
366
+ <member name="M:ProtoBuf.Extensible.GetValues``1(ProtoBuf.IExtensible,System.Int32)">
367
+ <summary>
368
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
369
+ Each occurrence of the field is yielded separately, making this usage suitable for "repeated"
370
+ (list) fields.
371
+ </summary>
372
+ <remarks>The extended data is processed lazily as the enumerator is iterated.</remarks>
373
+ <typeparam name="TValue">The data-type of the field.</typeparam>
374
+ <param name="instance">The extensible object to obtain the value from.</param>
375
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
376
+ <returns>An enumerator that yields each occurrence of the field.</returns>
377
+ </member>
378
+ <member name="M:ProtoBuf.Extensible.GetValues``1(ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat)">
379
+ <summary>
380
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
381
+ Each occurrence of the field is yielded separately, making this usage suitable for "repeated"
382
+ (list) fields.
383
+ </summary>
384
+ <remarks>The extended data is processed lazily as the enumerator is iterated.</remarks>
385
+ <typeparam name="TValue">The data-type of the field.</typeparam>
386
+ <param name="instance">The extensible object to obtain the value from.</param>
387
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
388
+ <param name="format">The data-format to use when decoding the value.</param>
389
+ <returns>An enumerator that yields each occurrence of the field.</returns>
390
+ </member>
391
+ <member name="M:ProtoBuf.Extensible.TryGetValue(ProtoBuf.Meta.TypeModel,System.Type,ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat,System.Boolean,System.Object@)">
392
+ <summary>
393
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
394
+ The value returned (in "value") is the composed value after merging any duplicated content;
395
+ if the value is "repeated" (a list), then use GetValues instead.
396
+ </summary>
397
+ <param name="type">The data-type of the field.</param>
398
+ <param name="model">The model to use for configuration.</param>
399
+ <param name="value">The effective value of the field, or the default value if not found.</param>
400
+ <param name="instance">The extensible object to obtain the value from.</param>
401
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
402
+ <param name="format">The data-format to use when decoding the value.</param>
403
+ <param name="allowDefinedTag">Allow tags that are present as part of the definition; for example, to query unknown enum values.</param>
404
+ <returns>True if data for the field was present, false otherwise.</returns>
405
+ </member>
406
+ <member name="M:ProtoBuf.Extensible.GetValues(ProtoBuf.Meta.TypeModel,System.Type,ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat)">
407
+ <summary>
408
+ Queries an extensible object for an additional (unexpected) data-field for the instance.
409
+ Each occurrence of the field is yielded separately, making this usage suitable for "repeated"
410
+ (list) fields.
411
+ </summary>
412
+ <remarks>The extended data is processed lazily as the enumerator is iterated.</remarks>
413
+ <param name="model">The model to use for configuration.</param>
414
+ <param name="type">The data-type of the field.</param>
415
+ <param name="instance">The extensible object to obtain the value from.</param>
416
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
417
+ <param name="format">The data-format to use when decoding the value.</param>
418
+ <returns>An enumerator that yields each occurrence of the field.</returns>
419
+ </member>
420
+ <member name="M:ProtoBuf.Extensible.AppendValue(ProtoBuf.Meta.TypeModel,ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat,System.Object)">
421
+ <summary>
422
+ Appends the value as an additional (unexpected) data-field for the instance.
423
+ Note that for non-repeated sub-objects, this equates to a merge operation;
424
+ for repeated sub-objects this adds a new instance to the set; for simple
425
+ values the new value supercedes the old value.
426
+ </summary>
427
+ <remarks>Note that appending a value does not remove the old value from
428
+ the stream; avoid repeatedly appending values for the same field.</remarks>
429
+ <param name="model">The model to use for configuration.</param>
430
+ <param name="format">The data-format to use when encoding the value.</param>
431
+ <param name="instance">The extensible object to append the value to.</param>
432
+ <param name="tag">The field identifier; the tag should not be defined as a known data-field for the instance.</param>
433
+ <param name="value">The value to append.</param>
434
+ </member>
435
+ <member name="T:ProtoBuf.ExtensibleUtil">
436
+ <summary>
437
+ This class acts as an internal wrapper allowing us to do a dynamic
438
+ methodinfo invoke; an't put into Serializer as don't want on public
439
+ API; can't put into Serializer&lt;T&gt; since we need to invoke
440
+ accross classes, which isn't allowed in Silverlight)
441
+ </summary>
442
+ </member>
443
+ <member name="M:ProtoBuf.ExtensibleUtil.GetExtendedValues``1(ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat,System.Boolean,System.Boolean)">
444
+ <summary>
445
+ All this does is call GetExtendedValuesTyped with the correct type for "instance";
446
+ this ensures that we don't get issues with subclasses declaring conflicting types -
447
+ the caller must respect the fields defined for the type they pass in.
448
+ </summary>
449
+ </member>
450
+ <member name="M:ProtoBuf.ExtensibleUtil.GetExtendedValues(ProtoBuf.Meta.TypeModel,System.Type,ProtoBuf.IExtensible,System.Int32,ProtoBuf.DataFormat,System.Boolean,System.Boolean)">
451
+ <summary>
452
+ All this does is call GetExtendedValuesTyped with the correct type for "instance";
453
+ this ensures that we don't get issues with subclasses declaring conflicting types -
454
+ the caller must respect the fields defined for the type they pass in.
455
+ </summary>
456
+ </member>
457
+ <member name="T:ProtoBuf.Helpers">
458
+ <summary>
459
+ Not all frameworks are created equal (fx1.1 vs fx2.0,
460
+ micro-framework, compact-framework,
461
+ silverlight, etc). This class simply wraps up a few things that would
462
+ otherwise make the real code unnecessarily messy, providing fallback
463
+ implementations if necessary.
464
+ </summary>
465
+ </member>
466
+ <member name="T:ProtoBuf.ProtoTypeCode">
467
+ <summary>
468
+ Intended to be a direct map to regular TypeCode, but:
469
+ - with missing types
470
+ - existing on WinRT
471
+ </summary>
472
+ </member>
473
+ <member name="T:ProtoBuf.ImplicitFields">
474
+ <summary>
475
+ Specifies the method used to infer field tags for members of the type
476
+ under consideration. Tags are deduced using the invariant alphabetic
477
+ sequence of the members' names; this makes implicit field tags very brittle,
478
+ and susceptible to changes such as field names (normally an isolated
479
+ change).
480
+ </summary>
481
+ </member>
482
+ <member name="F:ProtoBuf.ImplicitFields.None">
483
+ <summary>
484
+ No members are serialized implicitly; all members require a suitable
485
+ attribute such as [ProtoMember]. This is the recmomended mode for
486
+ most scenarios.
487
+ </summary>
488
+ </member>
489
+ <member name="F:ProtoBuf.ImplicitFields.AllPublic">
490
+ <summary>
491
+ Public properties and fields are eligible for implicit serialization;
492
+ this treats the public API as a contract. Ordering beings from ImplicitFirstTag.
493
+ </summary>
494
+ </member>
495
+ <member name="F:ProtoBuf.ImplicitFields.AllFields">
496
+ <summary>
497
+ Public and non-public fields are eligible for implicit serialization;
498
+ this acts as a state/implementation serializer. Ordering beings from ImplicitFirstTag.
499
+ </summary>
500
+ </member>
501
+ <member name="T:ProtoBuf.Meta.CallbackSet">
502
+ <summary>
503
+ Represents the set of serialization callbacks to be used when serializing/deserializing a type.
504
+ </summary>
505
+ </member>
506
+ <member name="P:ProtoBuf.Meta.CallbackSet.BeforeSerialize">
507
+ <summary>Called before serializing an instance</summary>
508
+ </member>
509
+ <member name="P:ProtoBuf.Meta.CallbackSet.BeforeDeserialize">
510
+ <summary>Called before deserializing an instance</summary>
511
+ </member>
512
+ <member name="P:ProtoBuf.Meta.CallbackSet.AfterSerialize">
513
+ <summary>Called after serializing an instance</summary>
514
+ </member>
515
+ <member name="P:ProtoBuf.Meta.CallbackSet.AfterDeserialize">
516
+ <summary>Called after deserializing an instance</summary>
517
+ </member>
518
+ <member name="P:ProtoBuf.Meta.CallbackSet.NonTrivial">
519
+ <summary>
520
+ True if any callback is set, else False
521
+ </summary>
522
+ </member>
523
+ <member name="T:ProtoBuf.Meta.MetaType">
524
+ <summary>
525
+ Represents a type at runtime for use with protobuf, allowing the field mappings (etc) to be defined
526
+ </summary>
527
+ </member>
528
+ <member name="M:ProtoBuf.Meta.MetaType.ToString">
529
+ <summary>
530
+ Get the name of the type being represented
531
+ </summary>
532
+ </member>
533
+ <member name="M:ProtoBuf.Meta.MetaType.AddSubType(System.Int32,System.Type)">
534
+ <summary>
535
+ Adds a known sub-type to the inheritance model
536
+ </summary>
537
+ </member>
538
+ <member name="M:ProtoBuf.Meta.MetaType.AddSubType(System.Int32,System.Type,ProtoBuf.DataFormat)">
539
+ <summary>
540
+ Adds a known sub-type to the inheritance model
541
+ </summary>
542
+ </member>
543
+ <member name="M:ProtoBuf.Meta.MetaType.SetCallbacks(System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo,System.Reflection.MethodInfo)">
544
+ <summary>
545
+ Assigns the callbacks to use during serialiation/deserialization.
546
+ </summary>
547
+ <param name="beforeSerialize">The method (or null) called before serialization begins.</param>
548
+ <param name="afterSerialize">The method (or null) called when serialization is complete.</param>
549
+ <param name="beforeDeserialize">The method (or null) called before deserialization begins (or when a new instance is created during deserialization).</param>
550
+ <param name="afterDeserialize">The method (or null) called when deserialization is complete.</param>
551
+ <returns>The set of callbacks.</returns>
552
+ </member>
553
+ <member name="M:ProtoBuf.Meta.MetaType.SetCallbacks(System.String,System.String,System.String,System.String)">
554
+ <summary>
555
+ Assigns the callbacks to use during serialiation/deserialization.
556
+ </summary>
557
+ <param name="beforeSerialize">The name of the method (or null) called before serialization begins.</param>
558
+ <param name="afterSerialize">The name of the method (or null) called when serialization is complete.</param>
559
+ <param name="beforeDeserialize">The name of the method (or null) called before deserialization begins (or when a new instance is created during deserialization).</param>
560
+ <param name="afterDeserialize">The name of the method (or null) called when deserialization is complete.</param>
561
+ <returns>The set of callbacks.</returns>
562
+ </member>
563
+ <member name="M:ProtoBuf.Meta.MetaType.SetFactory(System.Reflection.MethodInfo)">
564
+ <summary>
565
+ Designate a factory-method to use to create instances of this type
566
+ </summary>
567
+ </member>
568
+ <member name="M:ProtoBuf.Meta.MetaType.SetFactory(System.String)">
569
+ <summary>
570
+ Designate a factory-method to use to create instances of this type
571
+ </summary>
572
+ </member>
573
+ <member name="M:ProtoBuf.Meta.MetaType.ThrowIfFrozen">
574
+ <summary>
575
+ Throws an exception if the type has been made immutable
576
+ </summary>
577
+ </member>
578
+ <member name="M:ProtoBuf.Meta.MetaType.Add(System.Int32,System.String)">
579
+ <summary>
580
+ Adds a member (by name) to the MetaType
581
+ </summary>
582
+ </member>
583
+ <member name="M:ProtoBuf.Meta.MetaType.AddField(System.Int32,System.String)">
584
+ <summary>
585
+ Adds a member (by name) to the MetaType, returning the ValueMember rather than the fluent API.
586
+ This is otherwise identical to Add.
587
+ </summary>
588
+ </member>
589
+ <member name="M:ProtoBuf.Meta.MetaType.Add(System.String)">
590
+ <summary>
591
+ Adds a member (by name) to the MetaType
592
+ </summary>
593
+ </member>
594
+ <member name="M:ProtoBuf.Meta.MetaType.SetSurrogate(System.Type)">
595
+ <summary>
596
+ Performs serialization of this type via a surrogate; all
597
+ other serialization options are ignored and handled
598
+ by the surrogate's configuration.
599
+ </summary>
600
+ </member>
601
+ <member name="M:ProtoBuf.Meta.MetaType.Add(System.String[])">
602
+ <summary>
603
+ Adds a set of members (by name) to the MetaType
604
+ </summary>
605
+ </member>
606
+ <member name="M:ProtoBuf.Meta.MetaType.Add(System.Int32,System.String,System.Object)">
607
+ <summary>
608
+ Adds a member (by name) to the MetaType
609
+ </summary>
610
+ </member>
611
+ <member name="M:ProtoBuf.Meta.MetaType.Add(System.Int32,System.String,System.Type,System.Type)">
612
+ <summary>
613
+ Adds a member (by name) to the MetaType, including an itemType and defaultType for representing lists
614
+ </summary>
615
+ </member>
616
+ <member name="M:ProtoBuf.Meta.MetaType.AddField(System.Int32,System.String,System.Type,System.Type)">
617
+ <summary>
618
+ Adds a member (by name) to the MetaType, including an itemType and defaultType for representing lists, returning the ValueMember rather than the fluent API.
619
+ This is otherwise identical to Add.
620
+ </summary>
621
+ </member>
622
+ <member name="M:ProtoBuf.Meta.MetaType.GetFields">
623
+ <summary>
624
+ Returns the ValueMember instances associated with this type
625
+ </summary>
626
+ </member>
627
+ <member name="M:ProtoBuf.Meta.MetaType.GetSubtypes">
628
+ <summary>
629
+ Returns the SubType instances associated with this type
630
+ </summary>
631
+ </member>
632
+ <member name="M:ProtoBuf.Meta.MetaType.CompileInPlace">
633
+ <summary>
634
+ Compiles the serializer for this type; this is *not* a full
635
+ standalone compile, but can significantly boost performance
636
+ while allowing additional types to be added.
637
+ </summary>
638
+ <remarks>An in-place compile can access non-public types / members</remarks>
639
+ </member>
640
+ <member name="P:ProtoBuf.Meta.MetaType.BaseType">
641
+ <summary>
642
+ Gets the base-type for this type
643
+ </summary>
644
+ </member>
645
+ <member name="P:ProtoBuf.Meta.MetaType.IncludeSerializerMethod">
646
+ <summary>
647
+ When used to compile a model, should public serialization/deserialzation methods
648
+ be included for this type?
649
+ </summary>
650
+ </member>
651
+ <member name="P:ProtoBuf.Meta.MetaType.AsReferenceDefault">
652
+ <summary>
653
+ Should this type be treated as a reference by default?
654
+ </summary>
655
+ </member>
656
+ <member name="P:ProtoBuf.Meta.MetaType.HasCallbacks">
657
+ <summary>
658
+ Indicates whether the current type has defined callbacks
659
+ </summary>
660
+ </member>
661
+ <member name="P:ProtoBuf.Meta.MetaType.HasSubtypes">
662
+ <summary>
663
+ Indicates whether the current type has defined subtypes
664
+ </summary>
665
+ </member>
666
+ <member name="P:ProtoBuf.Meta.MetaType.Callbacks">
667
+ <summary>
668
+ Returns the set of callbacks defined for this type
669
+ </summary>
670
+ </member>
671
+ <member name="P:ProtoBuf.Meta.MetaType.Name">
672
+ <summary>
673
+ Gets or sets the name of this contract.
674
+ </summary>
675
+ </member>
676
+ <member name="P:ProtoBuf.Meta.MetaType.Type">
677
+ <summary>
678
+ The runtime type that the meta-type represents
679
+ </summary>
680
+ </member>
681
+ <member name="P:ProtoBuf.Meta.MetaType.UseConstructor">
682
+ <summary>
683
+ Gets or sets whether the type should use a parameterless constructor (the default),
684
+ or whether the type should skip the constructor completely. This option is not supported
685
+ on compact-framework.
686
+ </summary>
687
+ </member>
688
+ <member name="P:ProtoBuf.Meta.MetaType.ConstructType">
689
+ <summary>
690
+ The concrete type to create when a new instance of this type is needed; this may be useful when dealing
691
+ with dynamic proxies, or with interface-based APIs
692
+ </summary>
693
+ </member>
694
+ <member name="P:ProtoBuf.Meta.MetaType.Item(System.Int32)">
695
+ <summary>
696
+ Returns the ValueMember that matchs a given field number, or null if not found
697
+ </summary>
698
+ </member>
699
+ <member name="P:ProtoBuf.Meta.MetaType.Item(System.Reflection.MemberInfo)">
700
+ <summary>
701
+ Returns the ValueMember that matchs a given member (property/field), or null if not found
702
+ </summary>
703
+ </member>
704
+ <member name="P:ProtoBuf.Meta.MetaType.EnumPassthru">
705
+ <summary>
706
+ Gets or sets a value indicating that an enum should be treated directly as an int/short/etc, rather
707
+ than enforcing .proto enum rules. This is useful *in particul* for [Flags] enums.
708
+ </summary>
709
+ </member>
710
+ <member name="P:ProtoBuf.Meta.MetaType.IgnoreListHandling">
711
+ <summary>
712
+ Gets or sets a value indicating that this type should NOT be treated as a list, even if it has
713
+ familiar list-like characteristics (enumerable, add, etc)
714
+ </summary>
715
+ </member>
716
+ <member name="T:ProtoBuf.Meta.RuntimeTypeModel">
717
+ <summary>
718
+ Provides protobuf serialization support for a number of types that can be defined at runtime
719
+ </summary>
720
+ </member>
721
+ <member name="T:ProtoBuf.Meta.TypeModel">
722
+ <summary>
723
+ Provides protobuf serialization support for a number of types
724
+ </summary>
725
+ </member>
726
+ <member name="M:ProtoBuf.Meta.TypeModel.MapType(System.Type)">
727
+ <summary>
728
+ Resolve a System.Type to the compiler-specific type
729
+ </summary>
730
+ </member>
731
+ <member name="M:ProtoBuf.Meta.TypeModel.MapType(System.Type,System.Boolean)">
732
+ <summary>
733
+ Resolve a System.Type to the compiler-specific type
734
+ </summary>
735
+ </member>
736
+ <member name="M:ProtoBuf.Meta.TypeModel.TrySerializeAuxiliaryType(ProtoBuf.ProtoWriter,System.Type,ProtoBuf.DataFormat,System.Int32,System.Object,System.Boolean)">
737
+ <summary>
738
+ This is the more "complete" version of Serialize, which handles single instances of mapped types.
739
+ The value is written as a complete field, including field-header and (for sub-objects) a
740
+ length-prefix
741
+ In addition to that, this provides support for:
742
+ - basic values; individual int / string / Guid / etc
743
+ - IEnumerable sequences of any type handled by TrySerializeAuxiliaryType
744
+
745
+ </summary>
746
+ </member>
747
+ <member name="M:ProtoBuf.Meta.TypeModel.Serialize(System.IO.Stream,System.Object)">
748
+ <summary>
749
+ Writes a protocol-buffer representation of the given instance to the supplied stream.
750
+ </summary>
751
+ <param name="value">The existing instance to be serialized (cannot be null).</param>
752
+ <param name="dest">The destination stream to write to.</param>
753
+ </member>
754
+ <member name="M:ProtoBuf.Meta.TypeModel.Serialize(System.IO.Stream,System.Object,ProtoBuf.SerializationContext)">
755
+ <summary>
756
+ Writes a protocol-buffer representation of the given instance to the supplied stream.
757
+ </summary>
758
+ <param name="value">The existing instance to be serialized (cannot be null).</param>
759
+ <param name="dest">The destination stream to write to.</param>
760
+ <param name="context">Additional information about this serialization operation.</param>
761
+ </member>
762
+ <member name="M:ProtoBuf.Meta.TypeModel.Serialize(ProtoBuf.ProtoWriter,System.Object)">
763
+ <summary>
764
+ Writes a protocol-buffer representation of the given instance to the supplied writer.
765
+ </summary>
766
+ <param name="value">The existing instance to be serialized (cannot be null).</param>
767
+ <param name="dest">The destination writer to write to.</param>
768
+ </member>
769
+ <member name="M:ProtoBuf.Meta.TypeModel.DeserializeWithLengthPrefix(System.IO.Stream,System.Object,System.Type,ProtoBuf.PrefixStyle,System.Int32)">
770
+ <summary>
771
+ Applies a protocol-buffer stream to an existing instance (or null), using length-prefixed
772
+ data - useful with network IO.
773
+ </summary>
774
+ <param name="type">The type being merged.</param>
775
+ <param name="value">The existing instance to be modified (can be null).</param>
776
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
777
+ <param name="style">How to encode the length prefix.</param>
778
+ <param name="fieldNumber">The tag used as a prefix to each record (only used with base-128 style prefixes).</param>
779
+ <returns>The updated instance; this may be different to the instance argument if
780
+ either the original instance was null, or the stream defines a known sub-type of the
781
+ original instance.</returns>
782
+ </member>
783
+ <member name="M:ProtoBuf.Meta.TypeModel.DeserializeWithLengthPrefix(System.IO.Stream,System.Object,System.Type,ProtoBuf.PrefixStyle,System.Int32,ProtoBuf.Serializer.TypeResolver)">
784
+ <summary>
785
+ Applies a protocol-buffer stream to an existing instance (or null), using length-prefixed
786
+ data - useful with network IO.
787
+ </summary>
788
+ <param name="type">The type being merged.</param>
789
+ <param name="value">The existing instance to be modified (can be null).</param>
790
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
791
+ <param name="style">How to encode the length prefix.</param>
792
+ <param name="expectedField">The tag used as a prefix to each record (only used with base-128 style prefixes).</param>
793
+ <param name="resolver">Used to resolve types on a per-field basis.</param>
794
+ <returns>The updated instance; this may be different to the instance argument if
795
+ either the original instance was null, or the stream defines a known sub-type of the
796
+ original instance.</returns>
797
+ </member>
798
+ <member name="M:ProtoBuf.Meta.TypeModel.DeserializeWithLengthPrefix(System.IO.Stream,System.Object,System.Type,ProtoBuf.PrefixStyle,System.Int32,ProtoBuf.Serializer.TypeResolver,System.Int32@)">
799
+ <summary>
800
+ Applies a protocol-buffer stream to an existing instance (or null), using length-prefixed
801
+ data - useful with network IO.
802
+ </summary>
803
+ <param name="type">The type being merged.</param>
804
+ <param name="value">The existing instance to be modified (can be null).</param>
805
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
806
+ <param name="style">How to encode the length prefix.</param>
807
+ <param name="expectedField">The tag used as a prefix to each record (only used with base-128 style prefixes).</param>
808
+ <param name="resolver">Used to resolve types on a per-field basis.</param>
809
+ <param name="bytesRead">Returns the number of bytes consumed by this operation (includes length-prefix overheads and any skipped data).</param>
810
+ <returns>The updated instance; this may be different to the instance argument if
811
+ either the original instance was null, or the stream defines a known sub-type of the
812
+ original instance.</returns>
813
+ </member>
814
+ <member name="M:ProtoBuf.Meta.TypeModel.DeserializeItems(System.IO.Stream,System.Type,ProtoBuf.PrefixStyle,System.Int32,ProtoBuf.Serializer.TypeResolver)">
815
+ <summary>
816
+ Reads a sequence of consecutive length-prefixed items from a stream, using
817
+ either base-128 or fixed-length prefixes. Base-128 prefixes with a tag
818
+ are directly comparable to serializing multiple items in succession
819
+ (use the <see cref="F:ProtoBuf.Serializer.ListItemTag"/> tag to emulate the implicit behavior
820
+ when serializing a list/array). When a tag is
821
+ specified, any records with different tags are silently omitted. The
822
+ tag is ignored. The tag is ignores for fixed-length prefixes.
823
+ </summary>
824
+ <param name="source">The binary stream containing the serialized records.</param>
825
+ <param name="style">The prefix style used in the data.</param>
826
+ <param name="expectedField">The tag of records to return (if non-positive, then no tag is
827
+ expected and all records are returned).</param>
828
+ <param name="resolver">On a field-by-field basis, the type of object to deserialize (can be null if "type" is specified). </param>
829
+ <param name="type">The type of object to deserialize (can be null if "resolver" is specified).</param>
830
+ <returns>The sequence of deserialized objects.</returns>
831
+ </member>
832
+ <member name="M:ProtoBuf.Meta.TypeModel.DeserializeItems(System.IO.Stream,System.Type,ProtoBuf.PrefixStyle,System.Int32,ProtoBuf.Serializer.TypeResolver,ProtoBuf.SerializationContext)">
833
+ <summary>
834
+ Reads a sequence of consecutive length-prefixed items from a stream, using
835
+ either base-128 or fixed-length prefixes. Base-128 prefixes with a tag
836
+ are directly comparable to serializing multiple items in succession
837
+ (use the <see cref="F:ProtoBuf.Serializer.ListItemTag"/> tag to emulate the implicit behavior
838
+ when serializing a list/array). When a tag is
839
+ specified, any records with different tags are silently omitted. The
840
+ tag is ignored. The tag is ignores for fixed-length prefixes.
841
+ </summary>
842
+ <param name="source">The binary stream containing the serialized records.</param>
843
+ <param name="style">The prefix style used in the data.</param>
844
+ <param name="expectedField">The tag of records to return (if non-positive, then no tag is
845
+ expected and all records are returned).</param>
846
+ <param name="resolver">On a field-by-field basis, the type of object to deserialize (can be null if "type" is specified). </param>
847
+ <param name="type">The type of object to deserialize (can be null if "resolver" is specified).</param>
848
+ <returns>The sequence of deserialized objects.</returns>
849
+ <param name="context">Additional information about this serialization operation.</param>
850
+ </member>
851
+ <member name="M:ProtoBuf.Meta.TypeModel.DeserializeItems``1(System.IO.Stream,ProtoBuf.PrefixStyle,System.Int32)">
852
+ <summary>
853
+ Reads a sequence of consecutive length-prefixed items from a stream, using
854
+ either base-128 or fixed-length prefixes. Base-128 prefixes with a tag
855
+ are directly comparable to serializing multiple items in succession
856
+ (use the <see cref="F:ProtoBuf.Serializer.ListItemTag"/> tag to emulate the implicit behavior
857
+ when serializing a list/array). When a tag is
858
+ specified, any records with different tags are silently omitted. The
859
+ tag is ignored. The tag is ignores for fixed-length prefixes.
860
+ </summary>
861
+ <typeparam name="T">The type of object to deserialize.</typeparam>
862
+ <param name="source">The binary stream containing the serialized records.</param>
863
+ <param name="style">The prefix style used in the data.</param>
864
+ <param name="expectedField">The tag of records to return (if non-positive, then no tag is
865
+ expected and all records are returned).</param>
866
+ <returns>The sequence of deserialized objects.</returns>
867
+ </member>
868
+ <member name="M:ProtoBuf.Meta.TypeModel.DeserializeItems``1(System.IO.Stream,ProtoBuf.PrefixStyle,System.Int32,ProtoBuf.SerializationContext)">
869
+ <summary>
870
+ Reads a sequence of consecutive length-prefixed items from a stream, using
871
+ either base-128 or fixed-length prefixes. Base-128 prefixes with a tag
872
+ are directly comparable to serializing multiple items in succession
873
+ (use the <see cref="F:ProtoBuf.Serializer.ListItemTag"/> tag to emulate the implicit behavior
874
+ when serializing a list/array). When a tag is
875
+ specified, any records with different tags are silently omitted. The
876
+ tag is ignored. The tag is ignores for fixed-length prefixes.
877
+ </summary>
878
+ <typeparam name="T">The type of object to deserialize.</typeparam>
879
+ <param name="source">The binary stream containing the serialized records.</param>
880
+ <param name="style">The prefix style used in the data.</param>
881
+ <param name="expectedField">The tag of records to return (if non-positive, then no tag is
882
+ expected and all records are returned).</param>
883
+ <returns>The sequence of deserialized objects.</returns>
884
+ <param name="context">Additional information about this serialization operation.</param>
885
+ </member>
886
+ <member name="M:ProtoBuf.Meta.TypeModel.SerializeWithLengthPrefix(System.IO.Stream,System.Object,System.Type,ProtoBuf.PrefixStyle,System.Int32)">
887
+ <summary>
888
+ Writes a protocol-buffer representation of the given instance to the supplied stream,
889
+ with a length-prefix. This is useful for socket programming,
890
+ as DeserializeWithLengthPrefix can be used to read the single object back
891
+ from an ongoing stream.
892
+ </summary>
893
+ <param name="type">The type being serialized.</param>
894
+ <param name="value">The existing instance to be serialized (cannot be null).</param>
895
+ <param name="style">How to encode the length prefix.</param>
896
+ <param name="dest">The destination stream to write to.</param>
897
+ <param name="fieldNumber">The tag used as a prefix to each record (only used with base-128 style prefixes).</param>
898
+ </member>
899
+ <member name="M:ProtoBuf.Meta.TypeModel.SerializeWithLengthPrefix(System.IO.Stream,System.Object,System.Type,ProtoBuf.PrefixStyle,System.Int32,ProtoBuf.SerializationContext)">
900
+ <summary>
901
+ Writes a protocol-buffer representation of the given instance to the supplied stream,
902
+ with a length-prefix. This is useful for socket programming,
903
+ as DeserializeWithLengthPrefix can be used to read the single object back
904
+ from an ongoing stream.
905
+ </summary>
906
+ <param name="type">The type being serialized.</param>
907
+ <param name="value">The existing instance to be serialized (cannot be null).</param>
908
+ <param name="style">How to encode the length prefix.</param>
909
+ <param name="dest">The destination stream to write to.</param>
910
+ <param name="fieldNumber">The tag used as a prefix to each record (only used with base-128 style prefixes).</param>
911
+ <param name="context">Additional information about this serialization operation.</param>
912
+ </member>
913
+ <member name="M:ProtoBuf.Meta.TypeModel.Deserialize(System.IO.Stream,System.Object,System.Type)">
914
+ <summary>
915
+ Applies a protocol-buffer stream to an existing instance (which may be null).
916
+ </summary>
917
+ <param name="type">The type (including inheritance) to consider.</param>
918
+ <param name="value">The existing instance to be modified (can be null).</param>
919
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
920
+ <returns>The updated instance; this may be different to the instance argument if
921
+ either the original instance was null, or the stream defines a known sub-type of the
922
+ original instance.</returns>
923
+ </member>
924
+ <member name="M:ProtoBuf.Meta.TypeModel.Deserialize(System.IO.Stream,System.Object,System.Type,ProtoBuf.SerializationContext)">
925
+ <summary>
926
+ Applies a protocol-buffer stream to an existing instance (which may be null).
927
+ </summary>
928
+ <param name="type">The type (including inheritance) to consider.</param>
929
+ <param name="value">The existing instance to be modified (can be null).</param>
930
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
931
+ <returns>The updated instance; this may be different to the instance argument if
932
+ either the original instance was null, or the stream defines a known sub-type of the
933
+ original instance.</returns>
934
+ <param name="context">Additional information about this serialization operation.</param>
935
+ </member>
936
+ <member name="M:ProtoBuf.Meta.TypeModel.Deserialize(System.IO.Stream,System.Object,System.Type,System.Int32)">
937
+ <summary>
938
+ Applies a protocol-buffer stream to an existing instance (which may be null).
939
+ </summary>
940
+ <param name="type">The type (including inheritance) to consider.</param>
941
+ <param name="value">The existing instance to be modified (can be null).</param>
942
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
943
+ <param name="length">The number of bytes to consume.</param>
944
+ <returns>The updated instance; this may be different to the instance argument if
945
+ either the original instance was null, or the stream defines a known sub-type of the
946
+ original instance.</returns>
947
+ </member>
948
+ <member name="M:ProtoBuf.Meta.TypeModel.Deserialize(System.IO.Stream,System.Object,System.Type,System.Int32,ProtoBuf.SerializationContext)">
949
+ <summary>
950
+ Applies a protocol-buffer stream to an existing instance (which may be null).
951
+ </summary>
952
+ <param name="type">The type (including inheritance) to consider.</param>
953
+ <param name="value">The existing instance to be modified (can be null).</param>
954
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
955
+ <param name="length">The number of bytes to consume (or -1 to read to the end of the stream).</param>
956
+ <returns>The updated instance; this may be different to the instance argument if
957
+ either the original instance was null, or the stream defines a known sub-type of the
958
+ original instance.</returns>
959
+ <param name="context">Additional information about this serialization operation.</param>
960
+ </member>
961
+ <member name="M:ProtoBuf.Meta.TypeModel.Deserialize(ProtoBuf.ProtoReader,System.Object,System.Type)">
962
+ <summary>
963
+ Applies a protocol-buffer reader to an existing instance (which may be null).
964
+ </summary>
965
+ <param name="type">The type (including inheritance) to consider.</param>
966
+ <param name="value">The existing instance to be modified (can be null).</param>
967
+ <param name="source">The reader to apply to the instance (cannot be null).</param>
968
+ <returns>The updated instance; this may be different to the instance argument if
969
+ either the original instance was null, or the stream defines a known sub-type of the
970
+ original instance.</returns>
971
+ </member>
972
+ <member name="M:ProtoBuf.Meta.TypeModel.TryDeserializeAuxiliaryType(ProtoBuf.ProtoReader,ProtoBuf.DataFormat,System.Int32,System.Type,System.Object@,System.Boolean,System.Boolean,System.Boolean,System.Boolean)">
973
+ <summary>
974
+ This is the more "complete" version of Deserialize, which handles single instances of mapped types.
975
+ The value is read as a complete field, including field-header and (for sub-objects) a
976
+ length-prefix..kmc
977
+
978
+ In addition to that, this provides support for:
979
+ - basic values; individual int / string / Guid / etc
980
+ - IList sets of any type handled by TryDeserializeAuxiliaryType
981
+ </summary>
982
+ </member>
983
+ <member name="M:ProtoBuf.Meta.TypeModel.Create">
984
+ <summary>
985
+ Creates a new runtime model, to which the caller
986
+ can add support for a range of types. A model
987
+ can be used "as is", or can be compiled for
988
+ optimal performance.
989
+ </summary>
990
+ </member>
991
+ <member name="M:ProtoBuf.Meta.TypeModel.ResolveProxies(System.Type)">
992
+ <summary>
993
+ Applies common proxy scenarios, resolving the actual type to consider
994
+ </summary>
995
+ </member>
996
+ <member name="M:ProtoBuf.Meta.TypeModel.IsDefined(System.Type)">
997
+ <summary>
998
+ Indicates whether the supplied type is explicitly modelled by the model
999
+ </summary>
1000
+ </member>
1001
+ <member name="M:ProtoBuf.Meta.TypeModel.GetKey(System.Type@)">
1002
+ <summary>
1003
+ Provides the key that represents a given type in the current model.
1004
+ The type is also normalized for proxies at the same time.
1005
+ </summary>
1006
+ </member>
1007
+ <member name="M:ProtoBuf.Meta.TypeModel.GetKeyImpl(System.Type)">
1008
+ <summary>
1009
+ Provides the key that represents a given type in the current model.
1010
+ </summary>
1011
+ </member>
1012
+ <member name="M:ProtoBuf.Meta.TypeModel.Serialize(System.Int32,System.Object,ProtoBuf.ProtoWriter)">
1013
+ <summary>
1014
+ Writes a protocol-buffer representation of the given instance to the supplied stream.
1015
+ </summary>
1016
+ <param name="key">Represents the type (including inheritance) to consider.</param>
1017
+ <param name="value">The existing instance to be serialized (cannot be null).</param>
1018
+ <param name="dest">The destination stream to write to.</param>
1019
+ </member>
1020
+ <member name="M:ProtoBuf.Meta.TypeModel.Deserialize(System.Int32,System.Object,ProtoBuf.ProtoReader)">
1021
+ <summary>
1022
+ Applies a protocol-buffer stream to an existing instance (which may be null).
1023
+ </summary>
1024
+ <param name="key">Represents the type (including inheritance) to consider.</param>
1025
+ <param name="value">The existing instance to be modified (can be null).</param>
1026
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
1027
+ <returns>The updated instance; this may be different to the instance argument if
1028
+ either the original instance was null, or the stream defines a known sub-type of the
1029
+ original instance.</returns>
1030
+ </member>
1031
+ <member name="M:ProtoBuf.Meta.TypeModel.DeepClone(System.Object)">
1032
+ <summary>
1033
+ Create a deep clone of the supplied instance; any sub-items are also cloned.
1034
+ </summary>
1035
+ </member>
1036
+ <member name="M:ProtoBuf.Meta.TypeModel.ThrowUnexpectedSubtype(System.Type,System.Type)">
1037
+ <summary>
1038
+ Indicates that while an inheritance tree exists, the exact type encountered was not
1039
+ specified in that hierarchy and cannot be processed.
1040
+ </summary>
1041
+ </member>
1042
+ <member name="M:ProtoBuf.Meta.TypeModel.ThrowUnexpectedType(System.Type)">
1043
+ <summary>
1044
+ Indicates that the given type was not expected, and cannot be processed.
1045
+ </summary>
1046
+ </member>
1047
+ <member name="M:ProtoBuf.Meta.TypeModel.ThrowCannotCreateInstance(System.Type)">
1048
+ <summary>
1049
+ Indicates that the given type cannot be constructed; it may still be possible to
1050
+ deserialize into existing instances.
1051
+ </summary>
1052
+ </member>
1053
+ <member name="M:ProtoBuf.Meta.TypeModel.CanSerializeContractType(System.Type)">
1054
+ <summary>
1055
+ Returns true if the type supplied is either a recognised contract type,
1056
+ or a *list* of a recognised contract type.
1057
+ </summary>
1058
+ <remarks>Note that primitives always return false, even though the engine
1059
+ will, if forced, try to serialize such</remarks>
1060
+ <returns>True if this type is recognised as a serializable entity, else false</returns>
1061
+ </member>
1062
+ <member name="M:ProtoBuf.Meta.TypeModel.CanSerialize(System.Type)">
1063
+ <summary>
1064
+ Returns true if the type supplied is a basic type with inbuilt handling,
1065
+ a recognised contract type, or a *list* of a basic / contract type.
1066
+ </summary>
1067
+ </member>
1068
+ <member name="M:ProtoBuf.Meta.TypeModel.CanSerializeBasicType(System.Type)">
1069
+ <summary>
1070
+ Returns true if the type supplied is a basic type with inbuilt handling,
1071
+ or a *list* of a basic type with inbuilt handling
1072
+ </summary>
1073
+ </member>
1074
+ <member name="M:ProtoBuf.Meta.TypeModel.GetSchema(System.Type)">
1075
+ <summary>
1076
+ Suggest a .proto definition for the given type
1077
+ </summary>
1078
+ <param name="type">The type to generate a .proto definition for, or <c>null</c> to generate a .proto that represents the entire model</param>
1079
+ <returns>The .proto definition as a string</returns>
1080
+ </member>
1081
+ <member name="M:ProtoBuf.Meta.TypeModel.CreateFormatter(System.Type)">
1082
+ <summary>
1083
+ Creates a new IFormatter that uses protocol-buffer [de]serialization.
1084
+ </summary>
1085
+ <returns>A new IFormatter to be used during [de]serialization.</returns>
1086
+ <param name="type">The type of object to be [de]deserialized by the formatter.</param>
1087
+ </member>
1088
+ <member name="E:ProtoBuf.Meta.TypeModel.DynamicTypeFormatting">
1089
+ <summary>
1090
+ Used to provide custom services for writing and parsing type names when using dynamic types. Both parsing and formatting
1091
+ are provided on a single API as it is essential that both are mapped identically at all times.
1092
+ </summary>
1093
+ </member>
1094
+ <member name="T:ProtoBuf.Meta.TypeModel.CallbackType">
1095
+ <summary>
1096
+ Indicates the type of callback to be used
1097
+ </summary>
1098
+ </member>
1099
+ <member name="F:ProtoBuf.Meta.TypeModel.CallbackType.BeforeSerialize">
1100
+ <summary>
1101
+ Invoked before an object is serialized
1102
+ </summary>
1103
+ </member>
1104
+ <member name="F:ProtoBuf.Meta.TypeModel.CallbackType.AfterSerialize">
1105
+ <summary>
1106
+ Invoked after an object is serialized
1107
+ </summary>
1108
+ </member>
1109
+ <member name="F:ProtoBuf.Meta.TypeModel.CallbackType.BeforeDeserialize">
1110
+ <summary>
1111
+ Invoked before an object is deserialized (or when a new instance is created)
1112
+ </summary>
1113
+ </member>
1114
+ <member name="F:ProtoBuf.Meta.TypeModel.CallbackType.AfterDeserialize">
1115
+ <summary>
1116
+ Invoked after an object is deserialized
1117
+ </summary>
1118
+ </member>
1119
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.GetTypes">
1120
+ <summary>
1121
+ Returns a sequence of the Type instances that can be
1122
+ processed by this model.
1123
+ </summary>
1124
+ </member>
1125
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.GetSchema(System.Type)">
1126
+ <summary>
1127
+ Suggest a .proto definition for the given type
1128
+ </summary>
1129
+ <param name="type">The type to generate a .proto definition for, or <c>null</c> to generate a .proto that represents the entire model</param>
1130
+ <returns>The .proto definition as a string</returns>
1131
+ </member>
1132
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.Add(System.Type,System.Boolean)">
1133
+ <summary>
1134
+ Adds support for an additional type in this model, optionally
1135
+ appplying inbuilt patterns. If the type is already known to the
1136
+ model, the existing type is returned **without** applying
1137
+ any additional behaviour.
1138
+ </summary>
1139
+ <remarks>Inbuilt patterns include:
1140
+ [ProtoContract]/[ProtoMember(n)]
1141
+ [DataContract]/[DataMember(Order=n)]
1142
+ [XmlType]/[XmlElement(Order=n)]
1143
+ [On{Des|S}erializ{ing|ed}]
1144
+ ShouldSerialize*/*Specified
1145
+ </remarks>
1146
+ <param name="type">The type to be supported</param>
1147
+ <param name="applyDefaultBehaviour">Whether to apply the inbuilt configuration patterns (via attributes etc), or
1148
+ just add the type with no additional configuration (the type must then be manually configured).</param>
1149
+ <returns>The MetaType representing this type, allowing
1150
+ further configuration.</returns>
1151
+ </member>
1152
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.ThrowIfFrozen">
1153
+ <summary>
1154
+ Verifies that the model is still open to changes; if not, an exception is thrown
1155
+ </summary>
1156
+ </member>
1157
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.Freeze">
1158
+ <summary>
1159
+ Prevents further changes to this model
1160
+ </summary>
1161
+ </member>
1162
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.GetKeyImpl(System.Type)">
1163
+ <summary>
1164
+ Provides the key that represents a given type in the current model.
1165
+ </summary>
1166
+ </member>
1167
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.Serialize(System.Int32,System.Object,ProtoBuf.ProtoWriter)">
1168
+ <summary>
1169
+ Writes a protocol-buffer representation of the given instance to the supplied stream.
1170
+ </summary>
1171
+ <param name="key">Represents the type (including inheritance) to consider.</param>
1172
+ <param name="value">The existing instance to be serialized (cannot be null).</param>
1173
+ <param name="dest">The destination stream to write to.</param>
1174
+ </member>
1175
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.Deserialize(System.Int32,System.Object,ProtoBuf.ProtoReader)">
1176
+ <summary>
1177
+ Applies a protocol-buffer stream to an existing instance (which may be null).
1178
+ </summary>
1179
+ <param name="key">Represents the type (including inheritance) to consider.</param>
1180
+ <param name="value">The existing instance to be modified (can be null).</param>
1181
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
1182
+ <returns>The updated instance; this may be different to the instance argument if
1183
+ either the original instance was null, or the stream defines a known sub-type of the
1184
+ original instance.</returns>
1185
+ </member>
1186
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.CompileInPlace">
1187
+ <summary>
1188
+ Compiles the serializers individually; this is *not* a full
1189
+ standalone compile, but can significantly boost performance
1190
+ while allowing additional types to be added.
1191
+ </summary>
1192
+ <remarks>An in-place compile can access non-public types / members</remarks>
1193
+ </member>
1194
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.Compile">
1195
+ <summary>
1196
+ Fully compiles the current model into a static-compiled model instance
1197
+ </summary>
1198
+ <remarks>A full compilation is restricted to accessing public types / members</remarks>
1199
+ <returns>An instance of the newly created compiled type-model</returns>
1200
+ </member>
1201
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.Compile(System.String,System.String)">
1202
+ <summary>
1203
+ Fully compiles the current model into a static-compiled serialization dll
1204
+ (the serialization dll still requires protobuf-net for support services).
1205
+ </summary>
1206
+ <remarks>A full compilation is restricted to accessing public types / members</remarks>
1207
+ <param name="name">The name of the TypeModel class to create</param>
1208
+ <param name="path">The path for the new dll</param>
1209
+ <returns>An instance of the newly created compiled type-model</returns>
1210
+ </member>
1211
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.Compile(ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions)">
1212
+ <summary>
1213
+ Fully compiles the current model into a static-compiled serialization dll
1214
+ (the serialization dll still requires protobuf-net for support services).
1215
+ </summary>
1216
+ <remarks>A full compilation is restricted to accessing public types / members</remarks>
1217
+ <returns>An instance of the newly created compiled type-model</returns>
1218
+ </member>
1219
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.SetDefaultFactory(System.Reflection.MethodInfo)">
1220
+ <summary>
1221
+ Designate a factory-method to use to create instances of any type; note that this only affect types seen by the serializer *after* setting the factory.
1222
+ </summary>
1223
+ </member>
1224
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.InferTagFromNameDefault">
1225
+ <summary>
1226
+ Global default that
1227
+ enables/disables automatic tag generation based on the existing name / order
1228
+ of the defined members. See <seealso cref="P:ProtoBuf.ProtoContractAttribute.InferTagFromName"/>
1229
+ for usage and <b>important warning</b> / explanation.
1230
+ You must set the global default before attempting to serialize/deserialize any
1231
+ impacted type.
1232
+ </summary>
1233
+ </member>
1234
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.AutoAddProtoContractTypesOnly">
1235
+ <summary>
1236
+ Global default that determines whether types are considered serializable
1237
+ if they have [DataContract] / [XmlType]. With this enabled, <b>ONLY</b>
1238
+ types marked as [ProtoContract] are added automatically.
1239
+ </summary>
1240
+ </member>
1241
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.UseImplicitZeroDefaults">
1242
+ <summary>
1243
+ Global switch that enables or disables the implicit
1244
+ handling of "zero defaults"; meanning: if no other default is specified,
1245
+ it assumes bools always default to false, integers to zero, etc.
1246
+
1247
+ If this is disabled, no such assumptions are made and only *explicit*
1248
+ default values are processed. This is enabled by default to
1249
+ preserve similar logic to v1.
1250
+ </summary>
1251
+ </member>
1252
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.AllowParseableTypes">
1253
+ <summary>
1254
+ Global switch that determines whether types with a <c>.ToString()</c> and a <c>Parse(string)</c>
1255
+ should be serialized as strings.
1256
+ </summary>
1257
+ </member>
1258
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.Default">
1259
+ <summary>
1260
+ The default model, used to support ProtoBuf.Serializer
1261
+ </summary>
1262
+ </member>
1263
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.Item(System.Type)">
1264
+ <summary>
1265
+ Obtains the MetaType associated with a given Type for the current model,
1266
+ allowing additional configuration.
1267
+ </summary>
1268
+ </member>
1269
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.AutoCompile">
1270
+ <summary>
1271
+ Should serializers be compiled on demand? It may be useful
1272
+ to disable this for debugging purposes.
1273
+ </summary>
1274
+ </member>
1275
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.AutoAddMissingTypes">
1276
+ <summary>
1277
+ Should support for unexpected types be added automatically?
1278
+ If false, an exception is thrown when unexpected types
1279
+ are encountered.
1280
+ </summary>
1281
+ </member>
1282
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.MetadataTimeoutMilliseconds">
1283
+ <summary>
1284
+ The amount of time to wait if there are concurrent metadata access operations
1285
+ </summary>
1286
+ </member>
1287
+ <member name="E:ProtoBuf.Meta.RuntimeTypeModel.LockContended">
1288
+ <summary>
1289
+ If a lock-contention is detected, this event signals the *owner* of the lock responsible for the blockage, indicating
1290
+ what caused the problem; this is only raised if the lock-owning code successfully completes.
1291
+ </summary>
1292
+ </member>
1293
+ <member name="T:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions">
1294
+ <summary>
1295
+ Represents configuration options for compiling a model to
1296
+ a standalone assembly.
1297
+ </summary>
1298
+ </member>
1299
+ <member name="M:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions.SetFrameworkOptions(ProtoBuf.Meta.MetaType)">
1300
+ <summary>
1301
+ Import framework options from an existing type
1302
+ </summary>
1303
+ </member>
1304
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions.TargetFrameworkName">
1305
+ <summary>
1306
+ The TargetFrameworkAttribute FrameworkName value to burn into the generated assembly
1307
+ </summary>
1308
+ </member>
1309
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions.TargetFrameworkDisplayName">
1310
+ <summary>
1311
+ The TargetFrameworkAttribute FrameworkDisplayName value to burn into the generated assembly
1312
+ </summary>
1313
+ </member>
1314
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions.TypeName">
1315
+ <summary>
1316
+ The name of the TypeModel class to create
1317
+ </summary>
1318
+ </member>
1319
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions.OutputPath">
1320
+ <summary>
1321
+ The path for the new dll
1322
+ </summary>
1323
+ </member>
1324
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions.ImageRuntimeVersion">
1325
+ <summary>
1326
+ The runtime version for the generated assembly
1327
+ </summary>
1328
+ </member>
1329
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions.MetaDataVersion">
1330
+ <summary>
1331
+ The runtime version for the generated assembly
1332
+ </summary>
1333
+ </member>
1334
+ <member name="P:ProtoBuf.Meta.RuntimeTypeModel.CompilerOptions.Accessibility">
1335
+ <summary>
1336
+ The acecssibility of the generated serializer
1337
+ </summary>
1338
+ </member>
1339
+ <member name="T:ProtoBuf.Meta.RuntimeTypeModel.Accessibility">
1340
+ <summary>
1341
+ Type accessibility
1342
+ </summary>
1343
+ </member>
1344
+ <member name="F:ProtoBuf.Meta.RuntimeTypeModel.Accessibility.Public">
1345
+ <summary>
1346
+ Available to all callers
1347
+ </summary>
1348
+ </member>
1349
+ <member name="F:ProtoBuf.Meta.RuntimeTypeModel.Accessibility.Internal">
1350
+ <summary>
1351
+ Available to all callers in the same assembly, or assemblies specified via [InternalsVisibleTo(...)]
1352
+ </summary>
1353
+ </member>
1354
+ <member name="T:ProtoBuf.Meta.LockContentedEventArgs">
1355
+ <summary>
1356
+ Contains the stack-trace of the owning code when a lock-contention scenario is detected
1357
+ </summary>
1358
+ </member>
1359
+ <member name="P:ProtoBuf.Meta.LockContentedEventArgs.OwnerStackTrace">
1360
+ <summary>
1361
+ The stack-trace of the code that owned the lock when a lock-contention scenario occurred
1362
+ </summary>
1363
+ </member>
1364
+ <member name="T:ProtoBuf.Meta.LockContentedEventHandler">
1365
+ <summary>
1366
+ Event-type that is raised when a lock-contention scenario is detected
1367
+ </summary>
1368
+ </member>
1369
+ <member name="T:ProtoBuf.Meta.SubType">
1370
+ <summary>
1371
+ Represents an inherited type in a type hierarchy.
1372
+ </summary>
1373
+ </member>
1374
+ <member name="M:ProtoBuf.Meta.SubType.#ctor(System.Int32,ProtoBuf.Meta.MetaType,ProtoBuf.DataFormat)">
1375
+ <summary>
1376
+ Creates a new SubType instance.
1377
+ </summary>
1378
+ <param name="fieldNumber">The field-number that is used to encapsulate the data (as a nested
1379
+ message) for the derived dype.</param>
1380
+ <param name="derivedType">The sub-type to be considered.</param>
1381
+ <param name="format">Specific encoding style to use; in particular, Grouped can be used to avoid buffering, but is not the default.</param>
1382
+ </member>
1383
+ <member name="P:ProtoBuf.Meta.SubType.FieldNumber">
1384
+ <summary>
1385
+ The field-number that is used to encapsulate the data (as a nested
1386
+ message) for the derived dype.
1387
+ </summary>
1388
+ </member>
1389
+ <member name="P:ProtoBuf.Meta.SubType.DerivedType">
1390
+ <summary>
1391
+ The sub-type to be considered.
1392
+ </summary>
1393
+ </member>
1394
+ <member name="T:ProtoBuf.Meta.TypeFormatEventArgs">
1395
+ <summary>
1396
+ Event arguments needed to perform type-formatting functions; this could be resolving a Type to a string suitable for serialization, or could
1397
+ be requesting a Type from a string. If no changes are made, a default implementation will be used (from the assembly-qualified names).
1398
+ </summary>
1399
+ </member>
1400
+ <member name="P:ProtoBuf.Meta.TypeFormatEventArgs.Type">
1401
+ <summary>
1402
+ The type involved in this map; if this is initially null, a Type is expected to be provided for the string in FormattedName.
1403
+ </summary>
1404
+ </member>
1405
+ <member name="P:ProtoBuf.Meta.TypeFormatEventArgs.FormattedName">
1406
+ <summary>
1407
+ The formatted-name involved in this map; if this is initially null, a formatted-name is expected from the type in Type.
1408
+ </summary>
1409
+ </member>
1410
+ <member name="T:ProtoBuf.Meta.TypeFormatEventHandler">
1411
+ <summary>
1412
+ Delegate type used to perform type-formatting functions; the sender originates as the type-model.
1413
+ </summary>
1414
+ </member>
1415
+ <member name="T:ProtoBuf.Meta.ValueMember">
1416
+ <summary>
1417
+ Represents a member (property/field) that is mapped to a protobuf field
1418
+ </summary>
1419
+ </member>
1420
+ <member name="M:ProtoBuf.Meta.ValueMember.#ctor(ProtoBuf.Meta.RuntimeTypeModel,System.Type,System.Int32,System.Reflection.MemberInfo,System.Type,System.Type,System.Type,ProtoBuf.DataFormat,System.Object)">
1421
+ <summary>
1422
+ Creates a new ValueMember instance
1423
+ </summary>
1424
+ </member>
1425
+ <member name="M:ProtoBuf.Meta.ValueMember.#ctor(ProtoBuf.Meta.RuntimeTypeModel,System.Int32,System.Type,System.Type,System.Type,ProtoBuf.DataFormat)">
1426
+ <summary>
1427
+ Creates a new ValueMember instance
1428
+ </summary>
1429
+ </member>
1430
+ <member name="M:ProtoBuf.Meta.ValueMember.SetSpecified(System.Reflection.MethodInfo,System.Reflection.MethodInfo)">
1431
+ <summary>
1432
+ Specifies methods for working with optional data members.
1433
+ </summary>
1434
+ <param name="getSpecified">Provides a method (null for none) to query whether this member should
1435
+ be serialized; it must be of the form "bool {Method}()". The member is only serialized if the
1436
+ method returns true.</param>
1437
+ <param name="setSpecified">Provides a method (null for none) to indicate that a member was
1438
+ deserialized; it must be of the form "void {Method}(bool)", and will be called with "true"
1439
+ when data is found.</param>
1440
+ </member>
1441
+ <member name="P:ProtoBuf.Meta.ValueMember.FieldNumber">
1442
+ <summary>
1443
+ The number that identifies this member in a protobuf stream
1444
+ </summary>
1445
+ </member>
1446
+ <member name="P:ProtoBuf.Meta.ValueMember.Member">
1447
+ <summary>
1448
+ Gets the member (field/property) which this member relates to.
1449
+ </summary>
1450
+ </member>
1451
+ <member name="P:ProtoBuf.Meta.ValueMember.ItemType">
1452
+ <summary>
1453
+ Within a list / array / etc, the type of object for each item in the list (especially useful with ArrayList)
1454
+ </summary>
1455
+ </member>
1456
+ <member name="P:ProtoBuf.Meta.ValueMember.MemberType">
1457
+ <summary>
1458
+ The underlying type of the member
1459
+ </summary>
1460
+ </member>
1461
+ <member name="P:ProtoBuf.Meta.ValueMember.DefaultType">
1462
+ <summary>
1463
+ For abstract types (IList etc), the type of concrete object to create (if required)
1464
+ </summary>
1465
+ </member>
1466
+ <member name="P:ProtoBuf.Meta.ValueMember.ParentType">
1467
+ <summary>
1468
+ The type the defines the member
1469
+ </summary>
1470
+ </member>
1471
+ <member name="P:ProtoBuf.Meta.ValueMember.DefaultValue">
1472
+ <summary>
1473
+ The default value of the item (members with this value will not be serialized)
1474
+ </summary>
1475
+ </member>
1476
+ <member name="P:ProtoBuf.Meta.ValueMember.DataFormat">
1477
+ <summary>
1478
+ Specifies the rules used to process the field; this is used to determine the most appropriate
1479
+ wite-type, but also to describe subtypes <i>within</i> that wire-type (such as SignedVariant)
1480
+ </summary>
1481
+ </member>
1482
+ <member name="P:ProtoBuf.Meta.ValueMember.IsStrict">
1483
+ <summary>
1484
+ Indicates whether this field should follow strict encoding rules; this means (for example) that if a "fixed32"
1485
+ is encountered when "variant" is defined, then it will fail (throw an exception) when parsing. Note that
1486
+ when serializing the defined type is always used.
1487
+ </summary>
1488
+ </member>
1489
+ <member name="P:ProtoBuf.Meta.ValueMember.IsPacked">
1490
+ <summary>
1491
+ Indicates whether this field should use packed encoding (which can save lots of space for repeated primitive values).
1492
+ This option only applies to list/array data of primitive types (int, double, etc).
1493
+ </summary>
1494
+ </member>
1495
+ <member name="P:ProtoBuf.Meta.ValueMember.OverwriteList">
1496
+ <summary>
1497
+ Indicates whether this field should *repace* existing values (the default is false, meaning *append*).
1498
+ This option only applies to list/array data.
1499
+ </summary>
1500
+ </member>
1501
+ <member name="P:ProtoBuf.Meta.ValueMember.IsRequired">
1502
+ <summary>
1503
+ Indicates whether this field is mandatory.
1504
+ </summary>
1505
+ </member>
1506
+ <member name="P:ProtoBuf.Meta.ValueMember.AsReference">
1507
+ <summary>
1508
+ Enables full object-tracking/full-graph support.
1509
+ </summary>
1510
+ </member>
1511
+ <member name="P:ProtoBuf.Meta.ValueMember.DynamicType">
1512
+ <summary>
1513
+ Embeds the type information into the stream, allowing usage with types not known in advance.
1514
+ </summary>
1515
+ </member>
1516
+ <member name="P:ProtoBuf.Meta.ValueMember.Name">
1517
+ <summary>
1518
+ Gets the logical name for this member in the schema (this is not critical for binary serialization, but may be used
1519
+ when inferring a schema).
1520
+ </summary>
1521
+ </member>
1522
+ <member name="P:ProtoBuf.Meta.ValueMember.SupportNull">
1523
+ <summary>
1524
+ Should lists have extended support for null values? Note this makes the serialization less efficient.
1525
+ </summary>
1526
+ </member>
1527
+ <member name="T:ProtoBuf.PrefixStyle">
1528
+ <summary>
1529
+ Specifies the type of prefix that should be applied to messages.
1530
+ </summary>
1531
+ </member>
1532
+ <member name="F:ProtoBuf.PrefixStyle.None">
1533
+ <summary>
1534
+ No length prefix is applied to the data; the data is terminated only be the end of the stream.
1535
+ </summary>
1536
+ </member>
1537
+ <member name="F:ProtoBuf.PrefixStyle.Base128">
1538
+ <summary>
1539
+ A base-128 length prefix is applied to the data (efficient for short messages).
1540
+ </summary>
1541
+ </member>
1542
+ <member name="F:ProtoBuf.PrefixStyle.Fixed32">
1543
+ <summary>
1544
+ A fixed-length (little-endian) length prefix is applied to the data (useful for compatibility).
1545
+ </summary>
1546
+ </member>
1547
+ <member name="F:ProtoBuf.PrefixStyle.Fixed32BigEndian">
1548
+ <summary>
1549
+ A fixed-length (big-endian) length prefix is applied to the data (useful for compatibility).
1550
+ </summary>
1551
+ </member>
1552
+ <member name="T:ProtoBuf.ProtoContractAttribute">
1553
+ <summary>
1554
+ Indicates that a type is defined for protocol-buffer serialization.
1555
+ </summary>
1556
+ </member>
1557
+ <member name="P:ProtoBuf.ProtoContractAttribute.Name">
1558
+ <summary>
1559
+ Gets or sets the defined name of the type.
1560
+ </summary>
1561
+ </member>
1562
+ <member name="P:ProtoBuf.ProtoContractAttribute.ImplicitFirstTag">
1563
+ <summary>
1564
+ Gets or sets the fist offset to use with implicit field tags;
1565
+ only uesd if ImplicitFields is set.
1566
+ </summary>
1567
+ </member>
1568
+ <member name="P:ProtoBuf.ProtoContractAttribute.UseProtoMembersOnly">
1569
+ <summary>
1570
+ If specified, alternative contract markers (such as markers for XmlSerailizer or DataContractSerializer) are ignored.
1571
+ </summary>
1572
+ </member>
1573
+ <member name="P:ProtoBuf.ProtoContractAttribute.IgnoreListHandling">
1574
+ <summary>
1575
+ If specified, do NOT treat this type as a list, even if it looks like one.
1576
+ </summary>
1577
+ </member>
1578
+ <member name="P:ProtoBuf.ProtoContractAttribute.ImplicitFields">
1579
+ <summary>
1580
+ Gets or sets the mechanism used to automatically infer field tags
1581
+ for members. This option should be used in advanced scenarios only.
1582
+ Please review the important notes against the ImplicitFields enumeration.
1583
+ </summary>
1584
+ </member>
1585
+ <member name="P:ProtoBuf.ProtoContractAttribute.InferTagFromName">
1586
+ <summary>
1587
+ Enables/disables automatic tag generation based on the existing name / order
1588
+ of the defined members. This option is not used for members marked
1589
+ with ProtoMemberAttribute, as intended to provide compatibility with
1590
+ WCF serialization. WARNING: when adding new fields you must take
1591
+ care to increase the Order for new elements, otherwise data corruption
1592
+ may occur.
1593
+ </summary>
1594
+ <remarks>If not explicitly specified, the default is assumed from Serializer.GlobalOptions.InferTagFromName.</remarks>
1595
+ </member>
1596
+ <member name="P:ProtoBuf.ProtoContractAttribute.InferTagFromNameHasValue">
1597
+ <summary>
1598
+ Has a InferTagFromName value been explicitly set? if not, the default from the type-model is assumed.
1599
+ </summary>
1600
+ </member>
1601
+ <member name="P:ProtoBuf.ProtoContractAttribute.DataMemberOffset">
1602
+ <summary>
1603
+ Specifies an offset to apply to [DataMember(Order=...)] markers;
1604
+ this is useful when working with mex-generated classes that have
1605
+ a different origin (usually 1 vs 0) than the original data-contract.
1606
+
1607
+ This value is added to the Order of each member.
1608
+ </summary>
1609
+ </member>
1610
+ <member name="P:ProtoBuf.ProtoContractAttribute.SkipConstructor">
1611
+ <summary>
1612
+ If true, the constructor for the type is bypassed during deserialization, meaning any field initializers
1613
+ or other initialization code is skipped.
1614
+ </summary>
1615
+ </member>
1616
+ <member name="P:ProtoBuf.ProtoContractAttribute.AsReferenceDefault">
1617
+ <summary>
1618
+ Should this type be treated as a reference by default? Please also see the implications of this,
1619
+ as recorded on ProtoMemberAttribute.AsReference
1620
+ </summary>
1621
+ </member>
1622
+ <member name="P:ProtoBuf.ProtoContractAttribute.EnumPassthru">
1623
+ <summary>
1624
+ Applies only to enums (not to DTO classes themselves); gets or sets a value indicating that an enum should be treated directly as an int/short/etc, rather
1625
+ than enforcing .proto enum rules. This is useful *in particul* for [Flags] enums.
1626
+ </summary>
1627
+ </member>
1628
+ <member name="P:ProtoBuf.ProtoContractAttribute.EnumPassthruHasValue">
1629
+ <summary>
1630
+ Has a EnumPassthru value been explicitly set?
1631
+ </summary>
1632
+ </member>
1633
+ <member name="T:ProtoBuf.ProtoEnumAttribute">
1634
+ <summary>
1635
+ Used to define protocol-buffer specific behavior for
1636
+ enumerated values.
1637
+ </summary>
1638
+ </member>
1639
+ <member name="M:ProtoBuf.ProtoEnumAttribute.HasValue">
1640
+ <summary>
1641
+ Indicates whether this instance has a customised value mapping
1642
+ </summary>
1643
+ <returns>true if a specific value is set</returns>
1644
+ </member>
1645
+ <member name="P:ProtoBuf.ProtoEnumAttribute.Value">
1646
+ <summary>
1647
+ Gets or sets the specific value to use for this enum during serialization.
1648
+ </summary>
1649
+ </member>
1650
+ <member name="P:ProtoBuf.ProtoEnumAttribute.Name">
1651
+ <summary>
1652
+ Gets or sets the defined name of the enum, as used in .proto
1653
+ (this name is not used during serialization).
1654
+ </summary>
1655
+ </member>
1656
+ <member name="T:ProtoBuf.ProtoException">
1657
+ <summary>
1658
+ Indicates an error during serialization/deserialization of a proto stream.
1659
+ </summary>
1660
+ </member>
1661
+ <member name="M:ProtoBuf.ProtoException.#ctor">
1662
+ <summary>Creates a new ProtoException instance.</summary>
1663
+ </member>
1664
+ <member name="M:ProtoBuf.ProtoException.#ctor(System.String)">
1665
+ <summary>Creates a new ProtoException instance.</summary>
1666
+ </member>
1667
+ <member name="M:ProtoBuf.ProtoException.#ctor(System.String,System.Exception)">
1668
+ <summary>Creates a new ProtoException instance.</summary>
1669
+ </member>
1670
+ <member name="M:ProtoBuf.ProtoException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
1671
+ <summary>Creates a new ProtoException instance.</summary>
1672
+ </member>
1673
+ <member name="T:ProtoBuf.ProtoIgnoreAttribute">
1674
+ <summary>
1675
+ Indicates that a member should be excluded from serialization; this
1676
+ is only normally used when using implict fields.
1677
+ </summary>
1678
+ </member>
1679
+ <member name="T:ProtoBuf.ProtoPartialIgnoreAttribute">
1680
+ <summary>
1681
+ Indicates that a member should be excluded from serialization; this
1682
+ is only normally used when using implict fields. This allows
1683
+ ProtoIgnoreAttribute usage
1684
+ even for partial classes where the individual members are not
1685
+ under direct control.
1686
+ </summary>
1687
+ </member>
1688
+ <member name="M:ProtoBuf.ProtoPartialIgnoreAttribute.#ctor(System.String)">
1689
+ <summary>
1690
+ Creates a new ProtoPartialIgnoreAttribute instance.
1691
+ </summary>
1692
+ <param name="memberName">Specifies the member to be ignored.</param>
1693
+ </member>
1694
+ <member name="P:ProtoBuf.ProtoPartialIgnoreAttribute.MemberName">
1695
+ <summary>
1696
+ The name of the member to be ignored.
1697
+ </summary>
1698
+ </member>
1699
+ <member name="T:ProtoBuf.ProtoIncludeAttribute">
1700
+ <summary>
1701
+ Indicates the known-types to support for an individual
1702
+ message. This serializes each level in the hierarchy as
1703
+ a nested message to retain wire-compatibility with
1704
+ other protocol-buffer implementations.
1705
+ </summary>
1706
+ </member>
1707
+ <member name="M:ProtoBuf.ProtoIncludeAttribute.#ctor(System.Int32,System.Type)">
1708
+ <summary>
1709
+ Creates a new instance of the ProtoIncludeAttribute.
1710
+ </summary>
1711
+ <param name="tag">The unique index (within the type) that will identify this data.</param>
1712
+ <param name="knownType">The additional type to serialize/deserialize.</param>
1713
+ </member>
1714
+ <member name="M:ProtoBuf.ProtoIncludeAttribute.#ctor(System.Int32,System.String)">
1715
+ <summary>
1716
+ Creates a new instance of the ProtoIncludeAttribute.
1717
+ </summary>
1718
+ <param name="tag">The unique index (within the type) that will identify this data.</param>
1719
+ <param name="knownTypeName">The additional type to serialize/deserialize.</param>
1720
+ </member>
1721
+ <member name="P:ProtoBuf.ProtoIncludeAttribute.Tag">
1722
+ <summary>
1723
+ Gets the unique index (within the type) that will identify this data.
1724
+ </summary>
1725
+ </member>
1726
+ <member name="P:ProtoBuf.ProtoIncludeAttribute.KnownTypeName">
1727
+ <summary>
1728
+ Gets the additional type to serialize/deserialize.
1729
+ </summary>
1730
+ </member>
1731
+ <member name="P:ProtoBuf.ProtoIncludeAttribute.KnownType">
1732
+ <summary>
1733
+ Gets the additional type to serialize/deserialize.
1734
+ </summary>
1735
+ </member>
1736
+ <member name="P:ProtoBuf.ProtoIncludeAttribute.DataFormat">
1737
+ <summary>
1738
+ Specifies whether the inherited sype's sub-message should be
1739
+ written with a length-prefix (default), or with group markers.
1740
+ </summary>
1741
+ </member>
1742
+ <member name="T:ProtoBuf.ProtoMemberAttribute">
1743
+ <summary>
1744
+ Declares a member to be used in protocol-buffer serialization, using
1745
+ the given Tag. A DataFormat may be used to optimise the serialization
1746
+ format (for instance, using zigzag encoding for negative numbers, or
1747
+ fixed-length encoding for large values.
1748
+ </summary>
1749
+ </member>
1750
+ <member name="M:ProtoBuf.ProtoMemberAttribute.CompareTo(System.Object)">
1751
+ <summary>
1752
+ Compare with another ProtoMemberAttribute for sorting purposes
1753
+ </summary>
1754
+ </member>
1755
+ <member name="M:ProtoBuf.ProtoMemberAttribute.CompareTo(ProtoBuf.ProtoMemberAttribute)">
1756
+ <summary>
1757
+ Compare with another ProtoMemberAttribute for sorting purposes
1758
+ </summary>
1759
+ </member>
1760
+ <member name="M:ProtoBuf.ProtoMemberAttribute.#ctor(System.Int32)">
1761
+ <summary>
1762
+ Creates a new ProtoMemberAttribute instance.
1763
+ </summary>
1764
+ <param name="tag">Specifies the unique tag used to identify this member within the type.</param>
1765
+ </member>
1766
+ <member name="P:ProtoBuf.ProtoMemberAttribute.Name">
1767
+ <summary>
1768
+ Gets or sets the original name defined in the .proto; not used
1769
+ during serialization.
1770
+ </summary>
1771
+ </member>
1772
+ <member name="P:ProtoBuf.ProtoMemberAttribute.DataFormat">
1773
+ <summary>
1774
+ Gets or sets the data-format to be used when encoding this value.
1775
+ </summary>
1776
+ </member>
1777
+ <member name="P:ProtoBuf.ProtoMemberAttribute.Tag">
1778
+ <summary>
1779
+ Gets the unique tag used to identify this member within the type.
1780
+ </summary>
1781
+ </member>
1782
+ <member name="P:ProtoBuf.ProtoMemberAttribute.IsRequired">
1783
+ <summary>
1784
+ Gets or sets a value indicating whether this member is mandatory.
1785
+ </summary>
1786
+ </member>
1787
+ <member name="P:ProtoBuf.ProtoMemberAttribute.IsPacked">
1788
+ <summary>
1789
+ Gets a value indicating whether this member is packed.
1790
+ This option only applies to list/array data of primitive types (int, double, etc).
1791
+ </summary>
1792
+ </member>
1793
+ <member name="P:ProtoBuf.ProtoMemberAttribute.OverwriteList">
1794
+ <summary>
1795
+ Indicates whether this field should *repace* existing values (the default is false, meaning *append*).
1796
+ This option only applies to list/array data.
1797
+ </summary>
1798
+ </member>
1799
+ <member name="P:ProtoBuf.ProtoMemberAttribute.AsReference">
1800
+ <summary>
1801
+ Enables full object-tracking/full-graph support.
1802
+ </summary>
1803
+ </member>
1804
+ <member name="P:ProtoBuf.ProtoMemberAttribute.DynamicType">
1805
+ <summary>
1806
+ Embeds the type information into the stream, allowing usage with types not known in advance.
1807
+ </summary>
1808
+ </member>
1809
+ <member name="P:ProtoBuf.ProtoMemberAttribute.Options">
1810
+ <summary>
1811
+ Gets or sets a value indicating whether this member is packed (lists/arrays).
1812
+ </summary>
1813
+ </member>
1814
+ <member name="T:ProtoBuf.MemberSerializationOptions">
1815
+ <summary>
1816
+ Additional (optional) settings that control serialization of members
1817
+ </summary>
1818
+ </member>
1819
+ <member name="F:ProtoBuf.MemberSerializationOptions.None">
1820
+ <summary>
1821
+ Default; no additional options
1822
+ </summary>
1823
+ </member>
1824
+ <member name="F:ProtoBuf.MemberSerializationOptions.Packed">
1825
+ <summary>
1826
+ Indicates that repeated elements should use packed (length-prefixed) encoding
1827
+ </summary>
1828
+ </member>
1829
+ <member name="F:ProtoBuf.MemberSerializationOptions.Required">
1830
+ <summary>
1831
+ Indicates that the given item is required
1832
+ </summary>
1833
+ </member>
1834
+ <member name="F:ProtoBuf.MemberSerializationOptions.AsReference">
1835
+ <summary>
1836
+ Enables full object-tracking/full-graph support
1837
+ </summary>
1838
+ </member>
1839
+ <member name="F:ProtoBuf.MemberSerializationOptions.DynamicType">
1840
+ <summary>
1841
+ Embeds the type information into the stream, allowing usage with types not known in advance
1842
+ </summary>
1843
+ </member>
1844
+ <member name="F:ProtoBuf.MemberSerializationOptions.OverwriteList">
1845
+ <summary>
1846
+ Indicates whether this field should *repace* existing values (the default is false, meaning *append*).
1847
+ This option only applies to list/array data.
1848
+ </summary>
1849
+ </member>
1850
+ <member name="F:ProtoBuf.MemberSerializationOptions.AsReferenceHasValue">
1851
+ <summary>
1852
+ Determines whether the types AsReferenceDefault value is used, or whether this member's AsReference should be used
1853
+ </summary>
1854
+ </member>
1855
+ <member name="T:ProtoBuf.ProtoPartialMemberAttribute">
1856
+ <summary>
1857
+ Declares a member to be used in protocol-buffer serialization, using
1858
+ the given Tag and MemberName. This allows ProtoMemberAttribute usage
1859
+ even for partial classes where the individual members are not
1860
+ under direct control.
1861
+ A DataFormat may be used to optimise the serialization
1862
+ format (for instance, using zigzag encoding for negative numbers, or
1863
+ fixed-length encoding for large values.
1864
+ </summary>
1865
+ </member>
1866
+ <member name="M:ProtoBuf.ProtoPartialMemberAttribute.#ctor(System.Int32,System.String)">
1867
+ <summary>
1868
+ Creates a new ProtoMemberAttribute instance.
1869
+ </summary>
1870
+ <param name="tag">Specifies the unique tag used to identify this member within the type.</param>
1871
+ <param name="memberName">Specifies the member to be serialized.</param>
1872
+ </member>
1873
+ <member name="P:ProtoBuf.ProtoPartialMemberAttribute.MemberName">
1874
+ <summary>
1875
+ The name of the member to be serialized.
1876
+ </summary>
1877
+ </member>
1878
+ <member name="T:ProtoBuf.ProtoReader">
1879
+ <summary>
1880
+ A stateful reader, used to read a protobuf stream. Typical usage would be (sequentially) to call
1881
+ ReadFieldHeader and (after matching the field) an appropriate Read* method.
1882
+ </summary>
1883
+ </member>
1884
+ <member name="M:ProtoBuf.ProtoReader.#ctor(System.IO.Stream,ProtoBuf.Meta.TypeModel,ProtoBuf.SerializationContext)">
1885
+ <summary>
1886
+ Creates a new reader against a stream
1887
+ </summary>
1888
+ <param name="source">The source stream</param>
1889
+ <param name="model">The model to use for serialization; this can be null, but this will impair the ability to deserialize sub-objects</param>
1890
+ <param name="context">Additional context about this serialization operation</param>
1891
+ </member>
1892
+ <member name="M:ProtoBuf.ProtoReader.#ctor(System.IO.Stream,ProtoBuf.Meta.TypeModel,ProtoBuf.SerializationContext,System.Int32)">
1893
+ <summary>
1894
+ Creates a new reader against a stream
1895
+ </summary>
1896
+ <param name="source">The source stream</param>
1897
+ <param name="model">The model to use for serialization; this can be null, but this will impair the ability to deserialize sub-objects</param>
1898
+ <param name="context">Additional context about this serialization operation</param>
1899
+ <param name="length">The number of bytes to read, or -1 to read until the end of the stream</param>
1900
+ </member>
1901
+ <member name="M:ProtoBuf.ProtoReader.Dispose">
1902
+ <summary>
1903
+ Releases resources used by the reader, but importantly <b>does not</b> Dispose the
1904
+ underlying stream; in many typical use-cases the stream is used for different
1905
+ processes, so it is assumed that the consumer will Dispose their stream separately.
1906
+ </summary>
1907
+ </member>
1908
+ <member name="M:ProtoBuf.ProtoReader.ReadUInt32">
1909
+ <summary>
1910
+ Reads an unsigned 32-bit integer from the stream; supported wire-types: Variant, Fixed32, Fixed64
1911
+ </summary>
1912
+ </member>
1913
+ <member name="M:ProtoBuf.ProtoReader.ReadInt16">
1914
+ <summary>
1915
+ Reads a signed 16-bit integer from the stream: Variant, Fixed32, Fixed64, SignedVariant
1916
+ </summary>
1917
+ </member>
1918
+ <member name="M:ProtoBuf.ProtoReader.ReadUInt16">
1919
+ <summary>
1920
+ Reads an unsigned 16-bit integer from the stream; supported wire-types: Variant, Fixed32, Fixed64
1921
+ </summary>
1922
+ </member>
1923
+ <member name="M:ProtoBuf.ProtoReader.ReadByte">
1924
+ <summary>
1925
+ Reads an unsigned 8-bit integer from the stream; supported wire-types: Variant, Fixed32, Fixed64
1926
+ </summary>
1927
+ </member>
1928
+ <member name="M:ProtoBuf.ProtoReader.ReadSByte">
1929
+ <summary>
1930
+ Reads a signed 8-bit integer from the stream; supported wire-types: Variant, Fixed32, Fixed64, SignedVariant
1931
+ </summary>
1932
+ </member>
1933
+ <member name="M:ProtoBuf.ProtoReader.ReadInt32">
1934
+ <summary>
1935
+ Reads a signed 32-bit integer from the stream; supported wire-types: Variant, Fixed32, Fixed64, SignedVariant
1936
+ </summary>
1937
+ </member>
1938
+ <member name="M:ProtoBuf.ProtoReader.ReadInt64">
1939
+ <summary>
1940
+ Reads a signed 64-bit integer from the stream; supported wire-types: Variant, Fixed32, Fixed64, SignedVariant
1941
+ </summary>
1942
+ </member>
1943
+ <member name="M:ProtoBuf.ProtoReader.ReadString">
1944
+ <summary>
1945
+ Reads a string from the stream (using UTF8); supported wire-types: String
1946
+ </summary>
1947
+ </member>
1948
+ <member name="M:ProtoBuf.ProtoReader.ThrowEnumException(System.Type,System.Int32)">
1949
+ <summary>
1950
+ Throws an exception indication that the given value cannot be mapped to an enum.
1951
+ </summary>
1952
+ </member>
1953
+ <member name="M:ProtoBuf.ProtoReader.ReadDouble">
1954
+ <summary>
1955
+ Reads a double-precision number from the stream; supported wire-types: Fixed32, Fixed64
1956
+ </summary>
1957
+ </member>
1958
+ <member name="M:ProtoBuf.ProtoReader.ReadObject(System.Object,System.Int32,ProtoBuf.ProtoReader)">
1959
+ <summary>
1960
+ Reads (merges) a sub-message from the stream, internally calling StartSubItem and EndSubItem, and (in between)
1961
+ parsing the message in accordance with the model associated with the reader
1962
+ </summary>
1963
+ </member>
1964
+ <member name="M:ProtoBuf.ProtoReader.EndSubItem(ProtoBuf.SubItemToken,ProtoBuf.ProtoReader)">
1965
+ <summary>
1966
+ Makes the end of consuming a nested message in the stream; the stream must be either at the correct EndGroup
1967
+ marker, or all fields of the sub-message must have been consumed (in either case, this means ReadFieldHeader
1968
+ should return zero)
1969
+ </summary>
1970
+ </member>
1971
+ <member name="M:ProtoBuf.ProtoReader.StartSubItem(ProtoBuf.ProtoReader)">
1972
+ <summary>
1973
+ Begins consuming a nested message in the stream; supported wire-types: StartGroup, String
1974
+ </summary>
1975
+ <remarks>The token returned must be help and used when callining EndSubItem</remarks>
1976
+ </member>
1977
+ <member name="M:ProtoBuf.ProtoReader.ReadFieldHeader">
1978
+ <summary>
1979
+ Reads a field header from the stream, setting the wire-type and retuning the field number. If no
1980
+ more fields are available, then 0 is returned. This methods respects sub-messages.
1981
+ </summary>
1982
+ </member>
1983
+ <member name="M:ProtoBuf.ProtoReader.TryReadFieldHeader(System.Int32)">
1984
+ <summary>
1985
+ Looks ahead to see whether the next field in the stream is what we expect
1986
+ (typically; what we've just finished reading - for example ot read successive list items)
1987
+ </summary>
1988
+ </member>
1989
+ <member name="M:ProtoBuf.ProtoReader.Hint(ProtoBuf.WireType)">
1990
+ <summary>
1991
+ Compares the streams current wire-type to the hinted wire-type, updating the reader if necessary; for example,
1992
+ a Variant may be updated to SignedVariant. If the hinted wire-type is unrelated then no change is made.
1993
+ </summary>
1994
+ </member>
1995
+ <member name="M:ProtoBuf.ProtoReader.Assert(ProtoBuf.WireType)">
1996
+ <summary>
1997
+ Verifies that the stream's current wire-type is as expected, or a specialized sub-type (for example,
1998
+ SignedVariant) - in which case the current wire-type is updated. Otherwise an exception is thrown.
1999
+ </summary>
2000
+ </member>
2001
+ <member name="M:ProtoBuf.ProtoReader.SkipField">
2002
+ <summary>
2003
+ Discards the data for the current field.
2004
+ </summary>
2005
+ </member>
2006
+ <member name="M:ProtoBuf.ProtoReader.ReadUInt64">
2007
+ <summary>
2008
+ Reads an unsigned 64-bit integer from the stream; supported wire-types: Variant, Fixed32, Fixed64
2009
+ </summary>
2010
+ </member>
2011
+ <member name="M:ProtoBuf.ProtoReader.ReadSingle">
2012
+ <summary>
2013
+ Reads a single-precision number from the stream; supported wire-types: Fixed32, Fixed64
2014
+ </summary>
2015
+ </member>
2016
+ <member name="M:ProtoBuf.ProtoReader.ReadBoolean">
2017
+ <summary>
2018
+ Reads a boolean value from the stream; supported wire-types: Variant, Fixed32, Fixed64
2019
+ </summary>
2020
+ <returns></returns>
2021
+ </member>
2022
+ <member name="M:ProtoBuf.ProtoReader.AppendBytes(System.Byte[],ProtoBuf.ProtoReader)">
2023
+ <summary>
2024
+ Reads a byte-sequence from the stream, appending them to an existing byte-sequence (which can be null); supported wire-types: String
2025
+ </summary>
2026
+ </member>
2027
+ <member name="M:ProtoBuf.ProtoReader.ReadLengthPrefix(System.IO.Stream,System.Boolean,ProtoBuf.PrefixStyle,System.Int32@)">
2028
+ <summary>
2029
+ Reads the length-prefix of a message from a stream without buffering additional data, allowing a fixed-length
2030
+ reader to be created.
2031
+ </summary>
2032
+ </member>
2033
+ <member name="M:ProtoBuf.ProtoReader.DirectReadLittleEndianInt32(System.IO.Stream)">
2034
+ <summary>
2035
+ Reads a little-endian encoded integer. An exception is thrown if the data is not all available.
2036
+ </summary>
2037
+ </member>
2038
+ <member name="M:ProtoBuf.ProtoReader.DirectReadBigEndianInt32(System.IO.Stream)">
2039
+ <summary>
2040
+ Reads a big-endian encoded integer. An exception is thrown if the data is not all available.
2041
+ </summary>
2042
+ </member>
2043
+ <member name="M:ProtoBuf.ProtoReader.DirectReadVarintInt32(System.IO.Stream)">
2044
+ <summary>
2045
+ Reads a varint encoded integer. An exception is thrown if the data is not all available.
2046
+ </summary>
2047
+ </member>
2048
+ <member name="M:ProtoBuf.ProtoReader.DirectReadBytes(System.IO.Stream,System.Byte[],System.Int32,System.Int32)">
2049
+ <summary>
2050
+ Reads a string (of a given lenth, in bytes) directly from the source into a pre-existing buffer. An exception is thrown if the data is not all available.
2051
+ </summary>
2052
+ </member>
2053
+ <member name="M:ProtoBuf.ProtoReader.DirectReadBytes(System.IO.Stream,System.Int32)">
2054
+ <summary>
2055
+ Reads a given number of bytes directly from the source. An exception is thrown if the data is not all available.
2056
+ </summary>
2057
+ </member>
2058
+ <member name="M:ProtoBuf.ProtoReader.DirectReadString(System.IO.Stream,System.Int32)">
2059
+ <summary>
2060
+ Reads a string (of a given lenth, in bytes) directly from the source. An exception is thrown if the data is not all available.
2061
+ </summary>
2062
+ </member>
2063
+ <member name="M:ProtoBuf.ProtoReader.ReadLengthPrefix(System.IO.Stream,System.Boolean,ProtoBuf.PrefixStyle,System.Int32@,System.Int32@)">
2064
+ <summary>
2065
+ Reads the length-prefix of a message from a stream without buffering additional data, allowing a fixed-length
2066
+ reader to be created.
2067
+ </summary>
2068
+ </member>
2069
+ <member name="M:ProtoBuf.ProtoReader.TryReadUInt32Variant(System.IO.Stream,System.UInt32@)">
2070
+ <returns>The number of bytes consumed; 0 if no data available</returns>
2071
+ </member>
2072
+ <member name="M:ProtoBuf.ProtoReader.AppendExtensionData(ProtoBuf.IExtensible)">
2073
+ <summary>
2074
+ Copies the current field into the instance as extension data
2075
+ </summary>
2076
+ </member>
2077
+ <member name="M:ProtoBuf.ProtoReader.HasSubValue(ProtoBuf.WireType,ProtoBuf.ProtoReader)">
2078
+ <summary>
2079
+ Indicates whether the reader still has data remaining in the current sub-item,
2080
+ additionally setting the wire-type for the next field if there is more data.
2081
+ This is used when decoding packed data.
2082
+ </summary>
2083
+ </member>
2084
+ <member name="M:ProtoBuf.ProtoReader.NoteObject(System.Object,ProtoBuf.ProtoReader)">
2085
+ <summary>
2086
+ Utility method, not intended for public use; this helps maintain the root object is complex scenarios
2087
+ </summary>
2088
+ </member>
2089
+ <member name="M:ProtoBuf.ProtoReader.ReadType">
2090
+ <summary>
2091
+ Reads a Type from the stream, using the model's DynamicTypeFormatting if appropriate; supported wire-types: String
2092
+ </summary>
2093
+ </member>
2094
+ <member name="M:ProtoBuf.ProtoReader.Merge(ProtoBuf.ProtoReader,System.Object,System.Object)">
2095
+ <summary>
2096
+ Merge two objects using the details from the current reader; this is used to change the type
2097
+ of objects when an inheritance relationship is discovered later than usual during deserilazation.
2098
+ </summary>
2099
+ </member>
2100
+ <member name="P:ProtoBuf.ProtoReader.FieldNumber">
2101
+ <summary>
2102
+ Gets the number of the field being processed.
2103
+ </summary>
2104
+ </member>
2105
+ <member name="P:ProtoBuf.ProtoReader.WireType">
2106
+ <summary>
2107
+ Indicates the underlying proto serialization format on the wire.
2108
+ </summary>
2109
+ </member>
2110
+ <member name="P:ProtoBuf.ProtoReader.InternStrings">
2111
+ <summary>
2112
+ Gets / sets a flag indicating whether strings should be checked for repetition; if
2113
+ true, any repeated UTF-8 byte sequence will result in the same String instance, rather
2114
+ than a second instance of the same string. Enabled by default. Note that this uses
2115
+ a <i>custom</i> interner - the system-wide string interner is not used.
2116
+ </summary>
2117
+ </member>
2118
+ <member name="P:ProtoBuf.ProtoReader.Context">
2119
+ <summary>
2120
+ Addition information about this deserialization operation.
2121
+ </summary>
2122
+ </member>
2123
+ <member name="P:ProtoBuf.ProtoReader.Position">
2124
+ <summary>
2125
+ Returns the position of the current reader (note that this is not necessarily the same as the position
2126
+ in the underlying stream, if multiple readers are used on the same stream)
2127
+ </summary>
2128
+ </member>
2129
+ <member name="P:ProtoBuf.ProtoReader.Model">
2130
+ <summary>
2131
+ Get the TypeModel associated with this reader
2132
+ </summary>
2133
+ </member>
2134
+ <member name="T:ProtoBuf.ProtoWriter">
2135
+ <summary>
2136
+ Represents an output stream for writing protobuf data.
2137
+
2138
+ Why is the API backwards (static methods with writer arguments)?
2139
+ See: http://marcgravell.blogspot.com/2010/03/last-will-be-first-and-first-will-be.html
2140
+ </summary>
2141
+ </member>
2142
+ <member name="M:ProtoBuf.ProtoWriter.WriteObject(System.Object,System.Int32,ProtoBuf.ProtoWriter)">
2143
+ <summary>
2144
+ Write an encapsulated sub-object, using the supplied unique key (reprasenting a type).
2145
+ </summary>
2146
+ <param name="value">The object to write.</param>
2147
+ <param name="key">The key that uniquely identifies the type within the model.</param>
2148
+ <param name="writer">The destination.</param>
2149
+ </member>
2150
+ <member name="M:ProtoBuf.ProtoWriter.WriteRecursionSafeObject(System.Object,System.Int32,ProtoBuf.ProtoWriter)">
2151
+ <summary>
2152
+ Write an encapsulated sub-object, using the supplied unique key (reprasenting a type) - but the
2153
+ caller is asserting that this relationship is non-recursive; no recursion check will be
2154
+ performed.
2155
+ </summary>
2156
+ <param name="value">The object to write.</param>
2157
+ <param name="key">The key that uniquely identifies the type within the model.</param>
2158
+ <param name="writer">The destination.</param>
2159
+ </member>
2160
+ <member name="M:ProtoBuf.ProtoWriter.WriteFieldHeader(System.Int32,ProtoBuf.WireType,ProtoBuf.ProtoWriter)">
2161
+ <summary>
2162
+ Writes a field-header, indicating the format of the next data we plan to write.
2163
+ </summary>
2164
+ </member>
2165
+ <member name="M:ProtoBuf.ProtoWriter.WriteBytes(System.Byte[],ProtoBuf.ProtoWriter)">
2166
+ <summary>
2167
+ Writes a byte-array to the stream; supported wire-types: String
2168
+ </summary>
2169
+ </member>
2170
+ <member name="M:ProtoBuf.ProtoWriter.WriteBytes(System.Byte[],System.Int32,System.Int32,ProtoBuf.ProtoWriter)">
2171
+ <summary>
2172
+ Writes a byte-array to the stream; supported wire-types: String
2173
+ </summary>
2174
+ </member>
2175
+ <member name="M:ProtoBuf.ProtoWriter.StartSubItem(System.Object,ProtoBuf.ProtoWriter)">
2176
+ <summary>
2177
+ Indicates the start of a nested record.
2178
+ </summary>
2179
+ <param name="instance">The instance to write.</param>
2180
+ <param name="writer">The destination.</param>
2181
+ <returns>A token representing the state of the stream; this token is given to EndSubItem.</returns>
2182
+ </member>
2183
+ <member name="M:ProtoBuf.ProtoWriter.EndSubItem(ProtoBuf.SubItemToken,ProtoBuf.ProtoWriter)">
2184
+ <summary>
2185
+ Indicates the end of a nested record.
2186
+ </summary>
2187
+ <param name="token">The token obtained from StartubItem.</param>
2188
+ <param name="writer">The destination.</param>
2189
+ </member>
2190
+ <member name="M:ProtoBuf.ProtoWriter.#ctor(System.IO.Stream,ProtoBuf.Meta.TypeModel,ProtoBuf.SerializationContext)">
2191
+ <summary>
2192
+ Creates a new writer against a stream
2193
+ </summary>
2194
+ <param name="dest">The destination stream</param>
2195
+ <param name="model">The model to use for serialization; this can be null, but this will impair the ability to serialize sub-objects</param>
2196
+ <param name="context">Additional context about this serialization operation</param>
2197
+ </member>
2198
+ <member name="M:ProtoBuf.ProtoWriter.Close">
2199
+ <summary>
2200
+ Flushes data to the underlying stream, and releases any resources. The underlying stream is *not* disposed
2201
+ by this operation.
2202
+ </summary>
2203
+ </member>
2204
+ <member name="M:ProtoBuf.ProtoWriter.Flush(ProtoBuf.ProtoWriter)">
2205
+ <summary>
2206
+ Writes any buffered data (if possible) to the underlying stream.
2207
+ </summary>
2208
+ <param name="writer">The writer to flush</param>
2209
+ <remarks>It is not always possible to fully flush, since some sequences
2210
+ may require values to be back-filled into the byte-stream.</remarks>
2211
+ </member>
2212
+ <member name="M:ProtoBuf.ProtoWriter.WriteUInt32Variant(System.UInt32,ProtoBuf.ProtoWriter)">
2213
+ <summary>
2214
+ Writes an unsigned 32-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64
2215
+ </summary>
2216
+ </member>
2217
+ <member name="M:ProtoBuf.ProtoWriter.WriteString(System.String,ProtoBuf.ProtoWriter)">
2218
+ <summary>
2219
+ Writes a string to the stream; supported wire-types: String
2220
+ </summary>
2221
+ </member>
2222
+ <member name="M:ProtoBuf.ProtoWriter.WriteUInt64(System.UInt64,ProtoBuf.ProtoWriter)">
2223
+ <summary>
2224
+ Writes an unsigned 64-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64
2225
+ </summary>
2226
+ </member>
2227
+ <member name="M:ProtoBuf.ProtoWriter.WriteInt64(System.Int64,ProtoBuf.ProtoWriter)">
2228
+ <summary>
2229
+ Writes a signed 64-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64, SignedVariant
2230
+ </summary>
2231
+ </member>
2232
+ <member name="M:ProtoBuf.ProtoWriter.WriteUInt32(System.UInt32,ProtoBuf.ProtoWriter)">
2233
+ <summary>
2234
+ Writes an unsigned 16-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64
2235
+ </summary>
2236
+ </member>
2237
+ <member name="M:ProtoBuf.ProtoWriter.WriteInt16(System.Int16,ProtoBuf.ProtoWriter)">
2238
+ <summary>
2239
+ Writes a signed 16-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64, SignedVariant
2240
+ </summary>
2241
+ </member>
2242
+ <member name="M:ProtoBuf.ProtoWriter.WriteUInt16(System.UInt16,ProtoBuf.ProtoWriter)">
2243
+ <summary>
2244
+ Writes an unsigned 16-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64
2245
+ </summary>
2246
+ </member>
2247
+ <member name="M:ProtoBuf.ProtoWriter.WriteByte(System.Byte,ProtoBuf.ProtoWriter)">
2248
+ <summary>
2249
+ Writes an unsigned 8-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64
2250
+ </summary>
2251
+ </member>
2252
+ <member name="M:ProtoBuf.ProtoWriter.WriteSByte(System.SByte,ProtoBuf.ProtoWriter)">
2253
+ <summary>
2254
+ Writes a signed 8-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64, SignedVariant
2255
+ </summary>
2256
+ </member>
2257
+ <member name="M:ProtoBuf.ProtoWriter.WriteInt32(System.Int32,ProtoBuf.ProtoWriter)">
2258
+ <summary>
2259
+ Writes a signed 32-bit integer to the stream; supported wire-types: Variant, Fixed32, Fixed64, SignedVariant
2260
+ </summary>
2261
+ </member>
2262
+ <member name="M:ProtoBuf.ProtoWriter.WriteDouble(System.Double,ProtoBuf.ProtoWriter)">
2263
+ <summary>
2264
+ Writes a double-precision number to the stream; supported wire-types: Fixed32, Fixed64
2265
+ </summary>
2266
+ </member>
2267
+ <member name="M:ProtoBuf.ProtoWriter.WriteSingle(System.Single,ProtoBuf.ProtoWriter)">
2268
+ <summary>
2269
+ Writes a single-precision number to the stream; supported wire-types: Fixed32, Fixed64
2270
+ </summary>
2271
+ </member>
2272
+ <member name="M:ProtoBuf.ProtoWriter.ThrowEnumException(ProtoBuf.ProtoWriter,System.Object)">
2273
+ <summary>
2274
+ Throws an exception indicating that the given enum cannot be mapped to a serialized value.
2275
+ </summary>
2276
+ </member>
2277
+ <member name="M:ProtoBuf.ProtoWriter.WriteBoolean(System.Boolean,ProtoBuf.ProtoWriter)">
2278
+ <summary>
2279
+ Writes a boolean to the stream; supported wire-types: Variant, Fixed32, Fixed64
2280
+ </summary>
2281
+ </member>
2282
+ <member name="M:ProtoBuf.ProtoWriter.AppendExtensionData(ProtoBuf.IExtensible,ProtoBuf.ProtoWriter)">
2283
+ <summary>
2284
+ Copies any extension data stored for the instance to the underlying stream
2285
+ </summary>
2286
+ </member>
2287
+ <member name="M:ProtoBuf.ProtoWriter.SetPackedField(System.Int32,ProtoBuf.ProtoWriter)">
2288
+ <summary>
2289
+ Used for packed encoding; indicates that the next field should be skipped rather than
2290
+ a field header written. Note that the field number must match, else an exception is thrown
2291
+ when the attempt is made to write the (incorrect) field. The wire-type is taken from the
2292
+ subsequent call to WriteFieldHeader. Only primitive types can be packed.
2293
+ </summary>
2294
+ </member>
2295
+ <member name="M:ProtoBuf.ProtoWriter.SetRootObject(System.Object)">
2296
+ <summary>
2297
+ Specifies a known root object to use during reference-tracked serialization
2298
+ </summary>
2299
+ </member>
2300
+ <member name="M:ProtoBuf.ProtoWriter.WriteType(System.Type,ProtoBuf.ProtoWriter)">
2301
+ <summary>
2302
+ Writes a Type to the stream, using the model's DynamicTypeFormatting if appropriate; supported wire-types: String
2303
+ </summary>
2304
+ </member>
2305
+ <member name="P:ProtoBuf.ProtoWriter.Context">
2306
+ <summary>
2307
+ Addition information about this serialization operation.
2308
+ </summary>
2309
+ </member>
2310
+ <member name="P:ProtoBuf.ProtoWriter.Model">
2311
+ <summary>
2312
+ Get the TypeModel associated with this writer
2313
+ </summary>
2314
+ </member>
2315
+ <member name="T:ProtoBuf.SerializationContext">
2316
+ <summary>
2317
+ Additional information about a serialization operation
2318
+ </summary>
2319
+ </member>
2320
+ <member name="M:ProtoBuf.SerializationContext.op_Implicit(ProtoBuf.SerializationContext)~System.Runtime.Serialization.StreamingContext">
2321
+ <summary>
2322
+ Convert a SerializationContext to a StreamingContext
2323
+ </summary>
2324
+ </member>
2325
+ <member name="M:ProtoBuf.SerializationContext.op_Implicit(System.Runtime.Serialization.StreamingContext)~ProtoBuf.SerializationContext">
2326
+ <summary>
2327
+ Convert a StreamingContext to a SerializationContext
2328
+ </summary>
2329
+ </member>
2330
+ <member name="P:ProtoBuf.SerializationContext.Context">
2331
+ <summary>
2332
+ Gets or sets a user-defined object containing additional information about this serialization/deserialization operation.
2333
+ </summary>
2334
+ </member>
2335
+ <member name="P:ProtoBuf.SerializationContext.Default">
2336
+ <summary>
2337
+ A default SerializationContext, with minimal information.
2338
+ </summary>
2339
+ </member>
2340
+ <member name="P:ProtoBuf.SerializationContext.State">
2341
+ <summary>
2342
+ Gets or sets the source or destination of the transmitted data.
2343
+ </summary>
2344
+ </member>
2345
+ <member name="T:ProtoBuf.Serializer">
2346
+ <summary>
2347
+ Provides protocol-buffer serialization capability for concrete, attributed types. This
2348
+ is a *default* model, but custom serializer models are also supported.
2349
+ </summary>
2350
+ <remarks>
2351
+ Protocol-buffer serialization is a compact binary format, designed to take
2352
+ advantage of sparse data and knowledge of specific data types; it is also
2353
+ extensible, allowing a type to be deserialized / merged even if some data is
2354
+ not recognised.
2355
+ </remarks>
2356
+ </member>
2357
+ <member name="F:ProtoBuf.Serializer.ListItemTag">
2358
+ <summary>
2359
+ The field number that is used as a default when serializing/deserializing a list of objects.
2360
+ The data is treated as repeated message with field number 1.
2361
+ </summary>
2362
+ </member>
2363
+ <member name="M:ProtoBuf.Serializer.GetProto``1">
2364
+ <summary>
2365
+ Suggest a .proto definition for the given type
2366
+ </summary>
2367
+ <typeparam name="T">The type to generate a .proto definition for</typeparam>
2368
+ <returns>The .proto definition as a string</returns>
2369
+ </member>
2370
+ <member name="M:ProtoBuf.Serializer.DeepClone``1(``0)">
2371
+ <summary>
2372
+ Create a deep clone of the supplied instance; any sub-items are also cloned.
2373
+ </summary>
2374
+ </member>
2375
+ <member name="M:ProtoBuf.Serializer.Merge``1(System.IO.Stream,``0)">
2376
+ <summary>
2377
+ Applies a protocol-buffer stream to an existing instance.
2378
+ </summary>
2379
+ <typeparam name="T">The type being merged.</typeparam>
2380
+ <param name="instance">The existing instance to be modified (can be null).</param>
2381
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
2382
+ <returns>The updated instance; this may be different to the instance argument if
2383
+ either the original instance was null, or the stream defines a known sub-type of the
2384
+ original instance.</returns>
2385
+ </member>
2386
+ <member name="M:ProtoBuf.Serializer.Deserialize``1(System.IO.Stream)">
2387
+ <summary>
2388
+ Creates a new instance from a protocol-buffer stream
2389
+ </summary>
2390
+ <typeparam name="T">The type to be created.</typeparam>
2391
+ <param name="source">The binary stream to apply to the new instance (cannot be null).</param>
2392
+ <returns>A new, initialized instance.</returns>
2393
+ </member>
2394
+ <member name="M:ProtoBuf.Serializer.Serialize``1(System.IO.Stream,``0)">
2395
+ <summary>
2396
+ Writes a protocol-buffer representation of the given instance to the supplied stream.
2397
+ </summary>
2398
+ <param name="instance">The existing instance to be serialized (cannot be null).</param>
2399
+ <param name="destination">The destination stream to write to.</param>
2400
+ </member>
2401
+ <member name="M:ProtoBuf.Serializer.ChangeType``2(``0)">
2402
+ <summary>
2403
+ Serializes a given instance and deserializes it as a different type;
2404
+ this can be used to translate between wire-compatible objects (where
2405
+ two .NET types represent the same data), or to promote/demote a type
2406
+ through an inheritance hierarchy.
2407
+ </summary>
2408
+ <remarks>No assumption of compatibility is made between the types.</remarks>
2409
+ <typeparam name="TFrom">The type of the object being copied.</typeparam>
2410
+ <typeparam name="TTo">The type of the new object to be created.</typeparam>
2411
+ <param name="instance">The existing instance to use as a template.</param>
2412
+ <returns>A new instane of type TNewType, with the data from TOldType.</returns>
2413
+ </member>
2414
+ <member name="M:ProtoBuf.Serializer.Serialize``1(System.Runtime.Serialization.SerializationInfo,``0)">
2415
+ <summary>
2416
+ Writes a protocol-buffer representation of the given instance to the supplied SerializationInfo.
2417
+ </summary>
2418
+ <typeparam name="T">The type being serialized.</typeparam>
2419
+ <param name="instance">The existing instance to be serialized (cannot be null).</param>
2420
+ <param name="info">The destination SerializationInfo to write to.</param>
2421
+ </member>
2422
+ <member name="M:ProtoBuf.Serializer.Serialize``1(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext,``0)">
2423
+ <summary>
2424
+ Writes a protocol-buffer representation of the given instance to the supplied SerializationInfo.
2425
+ </summary>
2426
+ <typeparam name="T">The type being serialized.</typeparam>
2427
+ <param name="instance">The existing instance to be serialized (cannot be null).</param>
2428
+ <param name="info">The destination SerializationInfo to write to.</param>
2429
+ <param name="context">Additional information about this serialization operation.</param>
2430
+ </member>
2431
+ <member name="M:ProtoBuf.Serializer.Serialize``1(System.Xml.XmlWriter,``0)">
2432
+ <summary>
2433
+ Writes a protocol-buffer representation of the given instance to the supplied XmlWriter.
2434
+ </summary>
2435
+ <typeparam name="T">The type being serialized.</typeparam>
2436
+ <param name="instance">The existing instance to be serialized (cannot be null).</param>
2437
+ <param name="writer">The destination XmlWriter to write to.</param>
2438
+ </member>
2439
+ <member name="M:ProtoBuf.Serializer.Merge``1(System.Xml.XmlReader,``0)">
2440
+ <summary>
2441
+ Applies a protocol-buffer from an XmlReader to an existing instance.
2442
+ </summary>
2443
+ <typeparam name="T">The type being merged.</typeparam>
2444
+ <param name="instance">The existing instance to be modified (cannot be null).</param>
2445
+ <param name="reader">The XmlReader containing the data to apply to the instance (cannot be null).</param>
2446
+ </member>
2447
+ <member name="M:ProtoBuf.Serializer.Merge``1(System.Runtime.Serialization.SerializationInfo,``0)">
2448
+ <summary>
2449
+ Applies a protocol-buffer from a SerializationInfo to an existing instance.
2450
+ </summary>
2451
+ <typeparam name="T">The type being merged.</typeparam>
2452
+ <param name="instance">The existing instance to be modified (cannot be null).</param>
2453
+ <param name="info">The SerializationInfo containing the data to apply to the instance (cannot be null).</param>
2454
+ </member>
2455
+ <member name="M:ProtoBuf.Serializer.Merge``1(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext,``0)">
2456
+ <summary>
2457
+ Applies a protocol-buffer from a SerializationInfo to an existing instance.
2458
+ </summary>
2459
+ <typeparam name="T">The type being merged.</typeparam>
2460
+ <param name="instance">The existing instance to be modified (cannot be null).</param>
2461
+ <param name="info">The SerializationInfo containing the data to apply to the instance (cannot be null).</param>
2462
+ <param name="context">Additional information about this serialization operation.</param>
2463
+ </member>
2464
+ <member name="M:ProtoBuf.Serializer.PrepareSerializer``1">
2465
+ <summary>
2466
+ Precompiles the serializer for a given type.
2467
+ </summary>
2468
+ </member>
2469
+ <member name="M:ProtoBuf.Serializer.CreateFormatter``1">
2470
+ <summary>
2471
+ Creates a new IFormatter that uses protocol-buffer [de]serialization.
2472
+ </summary>
2473
+ <typeparam name="T">The type of object to be [de]deserialized by the formatter.</typeparam>
2474
+ <returns>A new IFormatter to be used during [de]serialization.</returns>
2475
+ </member>
2476
+ <member name="M:ProtoBuf.Serializer.DeserializeItems``1(System.IO.Stream,ProtoBuf.PrefixStyle,System.Int32)">
2477
+ <summary>
2478
+ Reads a sequence of consecutive length-prefixed items from a stream, using
2479
+ either base-128 or fixed-length prefixes. Base-128 prefixes with a tag
2480
+ are directly comparable to serializing multiple items in succession
2481
+ (use the <see cref="F:ProtoBuf.Serializer.ListItemTag"/> tag to emulate the implicit behavior
2482
+ when serializing a list/array). When a tag is
2483
+ specified, any records with different tags are silently omitted. The
2484
+ tag is ignored. The tag is ignores for fixed-length prefixes.
2485
+ </summary>
2486
+ <typeparam name="T">The type of object to deserialize.</typeparam>
2487
+ <param name="source">The binary stream containing the serialized records.</param>
2488
+ <param name="style">The prefix style used in the data.</param>
2489
+ <param name="fieldNumber">The tag of records to return (if non-positive, then no tag is
2490
+ expected and all records are returned).</param>
2491
+ <returns>The sequence of deserialized objects.</returns>
2492
+ </member>
2493
+ <member name="M:ProtoBuf.Serializer.DeserializeWithLengthPrefix``1(System.IO.Stream,ProtoBuf.PrefixStyle)">
2494
+ <summary>
2495
+ Creates a new instance from a protocol-buffer stream that has a length-prefix
2496
+ on data (to assist with network IO).
2497
+ </summary>
2498
+ <typeparam name="T">The type to be created.</typeparam>
2499
+ <param name="source">The binary stream to apply to the new instance (cannot be null).</param>
2500
+ <param name="style">How to encode the length prefix.</param>
2501
+ <returns>A new, initialized instance.</returns>
2502
+ </member>
2503
+ <member name="M:ProtoBuf.Serializer.DeserializeWithLengthPrefix``1(System.IO.Stream,ProtoBuf.PrefixStyle,System.Int32)">
2504
+ <summary>
2505
+ Creates a new instance from a protocol-buffer stream that has a length-prefix
2506
+ on data (to assist with network IO).
2507
+ </summary>
2508
+ <typeparam name="T">The type to be created.</typeparam>
2509
+ <param name="source">The binary stream to apply to the new instance (cannot be null).</param>
2510
+ <param name="style">How to encode the length prefix.</param>
2511
+ <param name="fieldNumber">The expected tag of the item (only used with base-128 prefix style).</param>
2512
+ <returns>A new, initialized instance.</returns>
2513
+ </member>
2514
+ <member name="M:ProtoBuf.Serializer.MergeWithLengthPrefix``1(System.IO.Stream,``0,ProtoBuf.PrefixStyle)">
2515
+ <summary>
2516
+ Applies a protocol-buffer stream to an existing instance, using length-prefixed
2517
+ data - useful with network IO.
2518
+ </summary>
2519
+ <typeparam name="T">The type being merged.</typeparam>
2520
+ <param name="instance">The existing instance to be modified (can be null).</param>
2521
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
2522
+ <param name="style">How to encode the length prefix.</param>
2523
+ <returns>The updated instance; this may be different to the instance argument if
2524
+ either the original instance was null, or the stream defines a known sub-type of the
2525
+ original instance.</returns>
2526
+ </member>
2527
+ <member name="M:ProtoBuf.Serializer.SerializeWithLengthPrefix``1(System.IO.Stream,``0,ProtoBuf.PrefixStyle)">
2528
+ <summary>
2529
+ Writes a protocol-buffer representation of the given instance to the supplied stream,
2530
+ with a length-prefix. This is useful for socket programming,
2531
+ as DeserializeWithLengthPrefix/MergeWithLengthPrefix can be used to read the single object back
2532
+ from an ongoing stream.
2533
+ </summary>
2534
+ <typeparam name="T">The type being serialized.</typeparam>
2535
+ <param name="instance">The existing instance to be serialized (cannot be null).</param>
2536
+ <param name="style">How to encode the length prefix.</param>
2537
+ <param name="destination">The destination stream to write to.</param>
2538
+ </member>
2539
+ <member name="M:ProtoBuf.Serializer.SerializeWithLengthPrefix``1(System.IO.Stream,``0,ProtoBuf.PrefixStyle,System.Int32)">
2540
+ <summary>
2541
+ Writes a protocol-buffer representation of the given instance to the supplied stream,
2542
+ with a length-prefix. This is useful for socket programming,
2543
+ as DeserializeWithLengthPrefix/MergeWithLengthPrefix can be used to read the single object back
2544
+ from an ongoing stream.
2545
+ </summary>
2546
+ <typeparam name="T">The type being serialized.</typeparam>
2547
+ <param name="instance">The existing instance to be serialized (cannot be null).</param>
2548
+ <param name="style">How to encode the length prefix.</param>
2549
+ <param name="destination">The destination stream to write to.</param>
2550
+ <param name="fieldNumber">The tag used as a prefix to each record (only used with base-128 style prefixes).</param>
2551
+ </member>
2552
+ <member name="M:ProtoBuf.Serializer.TryReadLengthPrefix(System.IO.Stream,ProtoBuf.PrefixStyle,System.Int32@)">
2553
+ <summary>Indicates the number of bytes expected for the next message.</summary>
2554
+ <param name="source">The stream containing the data to investigate for a length.</param>
2555
+ <param name="style">The algorithm used to encode the length.</param>
2556
+ <param name="length">The length of the message, if it could be identified.</param>
2557
+ <returns>True if a length could be obtained, false otherwise.</returns>
2558
+ </member>
2559
+ <member name="M:ProtoBuf.Serializer.TryReadLengthPrefix(System.Byte[],System.Int32,System.Int32,ProtoBuf.PrefixStyle,System.Int32@)">
2560
+ <summary>Indicates the number of bytes expected for the next message.</summary>
2561
+ <param name="buffer">The buffer containing the data to investigate for a length.</param>
2562
+ <param name="index">The offset of the first byte to read from the buffer.</param>
2563
+ <param name="count">The number of bytes to read from the buffer.</param>
2564
+ <param name="style">The algorithm used to encode the length.</param>
2565
+ <param name="length">The length of the message, if it could be identified.</param>
2566
+ <returns>True if a length could be obtained, false otherwise.</returns>
2567
+ </member>
2568
+ <member name="M:ProtoBuf.Serializer.FlushPool">
2569
+ <summary>
2570
+ Releases any internal buffers that have been reserved for efficiency; this does not affect any serialization
2571
+ operations; simply: it can be used (optionally) to release the buffers for garbage collection (at the expense
2572
+ of having to re-allocate a new buffer for the next operation, rather than re-use prior buffers).
2573
+ </summary>
2574
+ </member>
2575
+ <member name="T:ProtoBuf.Serializer.NonGeneric">
2576
+ <summary>
2577
+ Provides non-generic access to the default serializer.
2578
+ </summary>
2579
+ </member>
2580
+ <member name="M:ProtoBuf.Serializer.NonGeneric.DeepClone(System.Object)">
2581
+ <summary>
2582
+ Create a deep clone of the supplied instance; any sub-items are also cloned.
2583
+ </summary>
2584
+ </member>
2585
+ <member name="M:ProtoBuf.Serializer.NonGeneric.Serialize(System.IO.Stream,System.Object)">
2586
+ <summary>
2587
+ Writes a protocol-buffer representation of the given instance to the supplied stream.
2588
+ </summary>
2589
+ <param name="instance">The existing instance to be serialized (cannot be null).</param>
2590
+ <param name="dest">The destination stream to write to.</param>
2591
+ </member>
2592
+ <member name="M:ProtoBuf.Serializer.NonGeneric.Deserialize(System.Type,System.IO.Stream)">
2593
+ <summary>
2594
+ Creates a new instance from a protocol-buffer stream
2595
+ </summary>
2596
+ <param name="type">The type to be created.</param>
2597
+ <param name="source">The binary stream to apply to the new instance (cannot be null).</param>
2598
+ <returns>A new, initialized instance.</returns>
2599
+ </member>
2600
+ <member name="M:ProtoBuf.Serializer.NonGeneric.Merge(System.IO.Stream,System.Object)">
2601
+ <summary>Applies a protocol-buffer stream to an existing instance.</summary>
2602
+ <param name="instance">The existing instance to be modified (cannot be null).</param>
2603
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
2604
+ <returns>The updated instance</returns>
2605
+ </member>
2606
+ <member name="M:ProtoBuf.Serializer.NonGeneric.SerializeWithLengthPrefix(System.IO.Stream,System.Object,ProtoBuf.PrefixStyle,System.Int32)">
2607
+ <summary>
2608
+ Writes a protocol-buffer representation of the given instance to the supplied stream,
2609
+ with a length-prefix. This is useful for socket programming,
2610
+ as DeserializeWithLengthPrefix/MergeWithLengthPrefix can be used to read the single object back
2611
+ from an ongoing stream.
2612
+ </summary>
2613
+ <param name="instance">The existing instance to be serialized (cannot be null).</param>
2614
+ <param name="style">How to encode the length prefix.</param>
2615
+ <param name="destination">The destination stream to write to.</param>
2616
+ <param name="fieldNumber">The tag used as a prefix to each record (only used with base-128 style prefixes).</param>
2617
+ </member>
2618
+ <member name="M:ProtoBuf.Serializer.NonGeneric.TryDeserializeWithLengthPrefix(System.IO.Stream,ProtoBuf.PrefixStyle,ProtoBuf.Serializer.TypeResolver,System.Object@)">
2619
+ <summary>
2620
+ Applies a protocol-buffer stream to an existing instance (or null), using length-prefixed
2621
+ data - useful with network IO.
2622
+ </summary>
2623
+ <param name="value">The existing instance to be modified (can be null).</param>
2624
+ <param name="source">The binary stream to apply to the instance (cannot be null).</param>
2625
+ <param name="style">How to encode the length prefix.</param>
2626
+ <param name="resolver">Used to resolve types on a per-field basis.</param>
2627
+ <returns>The updated instance; this may be different to the instance argument if
2628
+ either the original instance was null, or the stream defines a known sub-type of the
2629
+ original instance.</returns>
2630
+ </member>
2631
+ <member name="M:ProtoBuf.Serializer.NonGeneric.CanSerialize(System.Type)">
2632
+ <summary>
2633
+ Indicates whether the supplied type is explicitly modelled by the model
2634
+ </summary>
2635
+ </member>
2636
+ <member name="T:ProtoBuf.Serializer.GlobalOptions">
2637
+ <summary>
2638
+ Global switches that change the behavior of protobuf-net
2639
+ </summary>
2640
+ </member>
2641
+ <member name="P:ProtoBuf.Serializer.GlobalOptions.InferTagFromName">
2642
+ <summary>
2643
+ <see cref="P:ProtoBuf.Meta.RuntimeTypeModel.InferTagFromNameDefault"/>
2644
+ </summary>
2645
+ </member>
2646
+ <member name="T:ProtoBuf.Serializer.TypeResolver">
2647
+ <summary>
2648
+ Maps a field-number to a type
2649
+ </summary>
2650
+ </member>
2651
+ <member name="M:ProtoBuf.Serializers.IProtoSerializer.Write(System.Object,ProtoBuf.ProtoWriter)">
2652
+ <summary>
2653
+ Perform the steps necessary to serialize this data.
2654
+ </summary>
2655
+ <param name="value">The value to be serialized.</param>
2656
+ <param name="dest">The writer entity that is accumulating the output data.</param>
2657
+ </member>
2658
+ <member name="M:ProtoBuf.Serializers.IProtoSerializer.Read(System.Object,ProtoBuf.ProtoReader)">
2659
+ <summary>
2660
+ Perform the steps necessary to deserialize this data.
2661
+ </summary>
2662
+ <param name="value">The current value, if appropriate.</param>
2663
+ <param name="source">The reader providing the input data.</param>
2664
+ <returns>The updated / replacement value.</returns>
2665
+ </member>
2666
+ <member name="M:ProtoBuf.Serializers.IProtoSerializer.EmitWrite(ProtoBuf.Compiler.CompilerContext,ProtoBuf.Compiler.Local)">
2667
+ <summary>Emit the IL necessary to perform the given actions
2668
+ to serialize this data.
2669
+ </summary>
2670
+ <param name="ctx">Details and utilities for the method being generated.</param>
2671
+ <param name="valueFrom">The source of the data to work against;
2672
+ If the value is only needed once, then LoadValue is sufficient. If
2673
+ the value is needed multiple times, then note that a "null"
2674
+ means "the top of the stack", in which case you should create your
2675
+ own copy - GetLocalWithValue.</param>
2676
+ </member>
2677
+ <member name="M:ProtoBuf.Serializers.IProtoSerializer.EmitRead(ProtoBuf.Compiler.CompilerContext,ProtoBuf.Compiler.Local)">
2678
+ <summary>
2679
+ Emit the IL necessary to perform the given actions to deserialize this data.
2680
+ </summary>
2681
+ <param name="ctx">Details and utilities for the method being generated.</param>
2682
+ <param name="entity">For nested values, the instance holding the values; note
2683
+ that this is not always provided - a null means not supplied. Since this is always
2684
+ a variable or argument, it is not necessary to consume this value.</param>
2685
+ </member>
2686
+ <member name="P:ProtoBuf.Serializers.IProtoSerializer.ExpectedType">
2687
+ <summary>
2688
+ The type that this serializer is intended to work for.
2689
+ </summary>
2690
+ </member>
2691
+ <member name="P:ProtoBuf.Serializers.IProtoSerializer.RequiresOldValue">
2692
+ <summary>
2693
+ Indicates whether a Read operation <em>replaces</em> the existing value, or
2694
+ <em>extends</em> the value. If false, the "value" parameter to Read is
2695
+ discarded, and should be passed in as null.
2696
+ </summary>
2697
+ </member>
2698
+ <member name="P:ProtoBuf.Serializers.IProtoSerializer.ReturnsValue">
2699
+ <summary>
2700
+ Now all Read operations return a value (although most do); if false no
2701
+ value should be expected.
2702
+ </summary>
2703
+ </member>
2704
+ <member name="T:ProtoBuf.ServiceModel.ProtoBehaviorAttribute">
2705
+ <summary>
2706
+ Uses protocol buffer serialization on the specified operation; note that this
2707
+ must be enabled on both the client and server.
2708
+ </summary>
2709
+ </member>
2710
+ <member name="T:ProtoBuf.ServiceModel.ProtoBehaviorExtension">
2711
+ <summary>
2712
+ Configuration element to swap out DatatContractSerilaizer with the XmlProtoSerializer for a given endpoint.
2713
+ </summary>
2714
+ <seealso cref="T:ProtoBuf.ServiceModel.ProtoEndpointBehavior"/>
2715
+ </member>
2716
+ <member name="M:ProtoBuf.ServiceModel.ProtoBehaviorExtension.#ctor">
2717
+ <summary>
2718
+ Creates a new ProtoBehaviorExtension instance.
2719
+ </summary>
2720
+ </member>
2721
+ <member name="M:ProtoBuf.ServiceModel.ProtoBehaviorExtension.CreateBehavior">
2722
+ <summary>
2723
+ Creates a behavior extension based on the current configuration settings.
2724
+ </summary>
2725
+ <returns>The behavior extension.</returns>
2726
+ </member>
2727
+ <member name="P:ProtoBuf.ServiceModel.ProtoBehaviorExtension.BehaviorType">
2728
+ <summary>
2729
+ Gets the type of behavior.
2730
+ </summary>
2731
+ </member>
2732
+ <member name="T:ProtoBuf.ServiceModel.ProtoEndpointBehavior">
2733
+ <summary>
2734
+ Behavior to swap out DatatContractSerilaizer with the XmlProtoSerializer for a given endpoint.
2735
+ <example>
2736
+ Add the following to the server and client app.config in the system.serviceModel section:
2737
+ <behaviors>
2738
+ <endpointBehaviors>
2739
+ <behavior name="ProtoBufBehaviorConfig">
2740
+ <ProtoBufSerialization/>
2741
+ </behavior>
2742
+ </endpointBehaviors>
2743
+ </behaviors>
2744
+ <extensions>
2745
+ <behaviorExtensions>
2746
+ <add name="ProtoBufSerialization" type="ProtoBuf.ServiceModel.ProtoBehaviorExtension, protobuf-net, Version=1.0.0.255, Culture=neutral, PublicKeyToken=257b51d87d2e4d67"/>
2747
+ </behaviorExtensions>
2748
+ </extensions>
2749
+
2750
+ Configure your endpoints to have a behaviorConfiguration as follows:
2751
+
2752
+ <service name="TK.Framework.Samples.ServiceModel.Contract.SampleService">
2753
+ <endpoint address="http://myhost:9003/SampleService" binding="basicHttpBinding" behaviorConfiguration="ProtoBufBehaviorConfig"
2754
+ bindingConfiguration="basicHttpBindingConfig" name="basicHttpProtoBuf" contract="ISampleServiceContract" />
2755
+ </service>
2756
+ <client>
2757
+ <endpoint address="http://myhost:9003/SampleService" binding="basicHttpBinding"
2758
+ bindingConfiguration="basicHttpBindingConfig" contract="ISampleServiceContract"
2759
+ name="BasicHttpProtoBufEndpoint" behaviorConfiguration="ProtoBufBehaviorConfig"/>
2760
+ </client>
2761
+ </example>
2762
+ </summary>
2763
+ </member>
2764
+ <member name="T:ProtoBuf.ServiceModel.ProtoOperationBehavior">
2765
+ <summary>
2766
+ Describes a WCF operation behaviour that can perform protobuf serialization
2767
+ </summary>
2768
+ </member>
2769
+ <member name="M:ProtoBuf.ServiceModel.ProtoOperationBehavior.#ctor(System.ServiceModel.Description.OperationDescription)">
2770
+ <summary>
2771
+ Create a new ProtoOperationBehavior instance
2772
+ </summary>
2773
+ </member>
2774
+ <member name="M:ProtoBuf.ServiceModel.ProtoOperationBehavior.CreateSerializer(System.Type,System.Xml.XmlDictionaryString,System.Xml.XmlDictionaryString,System.Collections.Generic.IList{System.Type})">
2775
+ <summary>
2776
+ Creates a protobuf serializer if possible (falling back to the default WCF serializer)
2777
+ </summary>
2778
+ </member>
2779
+ <member name="P:ProtoBuf.ServiceModel.ProtoOperationBehavior.Model">
2780
+ <summary>
2781
+ The type-model that should be used with this behaviour
2782
+ </summary>
2783
+ </member>
2784
+ <member name="T:ProtoBuf.ServiceModel.XmlProtoSerializer">
2785
+ <summary>
2786
+ An xml object serializer that can embed protobuf data in a base-64 hunk (looking like a byte[])
2787
+ </summary>
2788
+ </member>
2789
+ <member name="M:ProtoBuf.ServiceModel.XmlProtoSerializer.TryCreate(ProtoBuf.Meta.TypeModel,System.Type)">
2790
+ <summary>
2791
+ Attempt to create a new serializer for the given model and type
2792
+ </summary>
2793
+ <returns>A new serializer instance if the type is recognised by the model; null otherwise</returns>
2794
+ </member>
2795
+ <member name="M:ProtoBuf.ServiceModel.XmlProtoSerializer.#ctor(ProtoBuf.Meta.TypeModel,System.Type)">
2796
+ <summary>
2797
+ Creates a new serializer for the given model and type
2798
+ </summary>
2799
+ </member>
2800
+ <member name="M:ProtoBuf.ServiceModel.XmlProtoSerializer.WriteEndObject(System.Xml.XmlDictionaryWriter)">
2801
+ <summary>
2802
+ Ends an object in the output
2803
+ </summary>
2804
+ </member>
2805
+ <member name="M:ProtoBuf.ServiceModel.XmlProtoSerializer.WriteStartObject(System.Xml.XmlDictionaryWriter,System.Object)">
2806
+ <summary>
2807
+ Begins an object in the output
2808
+ </summary>
2809
+ </member>
2810
+ <member name="M:ProtoBuf.ServiceModel.XmlProtoSerializer.WriteObjectContent(System.Xml.XmlDictionaryWriter,System.Object)">
2811
+ <summary>
2812
+ Writes the body of an object in the output
2813
+ </summary>
2814
+ </member>
2815
+ <member name="M:ProtoBuf.ServiceModel.XmlProtoSerializer.IsStartObject(System.Xml.XmlDictionaryReader)">
2816
+ <summary>
2817
+ Indicates whether this is the start of an object we are prepared to handle
2818
+ </summary>
2819
+ </member>
2820
+ <member name="M:ProtoBuf.ServiceModel.XmlProtoSerializer.ReadObject(System.Xml.XmlDictionaryReader,System.Boolean)">
2821
+ <summary>
2822
+ Reads the body of an object
2823
+ </summary>
2824
+ </member>
2825
+ <member name="T:ProtoBuf.SubItemToken">
2826
+ <summary>
2827
+ Used to hold particulars relating to nested objects. This is opaque to the caller - simply
2828
+ give back the token you are given at the end of an object.
2829
+ </summary>
2830
+ </member>
2831
+ <member name="T:ProtoBuf.WireType">
2832
+ <summary>
2833
+ Indicates the encoding used to represent an individual value in a protobuf stream
2834
+ </summary>
2835
+ </member>
2836
+ <member name="F:ProtoBuf.WireType.None">
2837
+ <summary>
2838
+ Represents an error condition
2839
+ </summary>
2840
+ </member>
2841
+ <member name="F:ProtoBuf.WireType.Variant">
2842
+ <summary>
2843
+ Base-128 variant-length encoding
2844
+ </summary>
2845
+ </member>
2846
+ <member name="F:ProtoBuf.WireType.Fixed64">
2847
+ <summary>
2848
+ Fixed-length 8-byte encoding
2849
+ </summary>
2850
+ </member>
2851
+ <member name="F:ProtoBuf.WireType.String">
2852
+ <summary>
2853
+ Length-variant-prefixed encoding
2854
+ </summary>
2855
+ </member>
2856
+ <member name="F:ProtoBuf.WireType.StartGroup">
2857
+ <summary>
2858
+ Indicates the start of a group
2859
+ </summary>
2860
+ </member>
2861
+ <member name="F:ProtoBuf.WireType.EndGroup">
2862
+ <summary>
2863
+ Indicates the end of a group
2864
+ </summary>
2865
+ </member>
2866
+ <member name="F:ProtoBuf.WireType.Fixed32">
2867
+ <summary>
2868
+ Fixed-length 4-byte encoding
2869
+ </summary>10
2870
+ </member>
2871
+ <member name="F:ProtoBuf.WireType.SignedVariant">
2872
+ <summary>
2873
+ This is not a formal wire-type in the "protocol buffers" spec, but
2874
+ denotes a variant integer that should be interpreted using
2875
+ zig-zag semantics (so -ve numbers aren't a significant overhead)
2876
+ </summary>
2877
+ </member>
2878
+ </members>
2879
+ </doc>