game_machine 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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>