From d4a2076f147b02202a060a956fa6156724ac2f99 Mon Sep 17 00:00:00 2001 From: Vitaly Buka Date: Wed, 1 Mar 2017 14:23:32 -0800 Subject: Split binary and text serialization. --- src/binary_format.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/binary_format.h (limited to 'src/binary_format.h') diff --git a/src/binary_format.h b/src/binary_format.h new file mode 100644 index 0000000..1aceaad --- /dev/null +++ b/src/binary_format.h @@ -0,0 +1,34 @@ +// Copyright 2017 Google Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef SRC_BINARY_FORMAT_H_ +#define SRC_BINARY_FORMAT_H_ + +#include + +#include "port/protobuf.h" + +namespace protobuf_mutator { + +// Binary serialization of protos. +bool ParseBinaryMessage(const uint8_t* data, size_t size, + protobuf::Message* output); +bool ParseBinaryMessage(const std::string& data, protobuf::Message* output); +size_t SaveMessageAsBinary(const protobuf::Message& message, uint8_t* data, + size_t max_size); +std::string SaveMessageAsBinary(const protobuf::Message& message); + +} // namespace protobuf_mutator + +#endif // SRC_BINARY_FORMAT_H_ -- cgit v1.2.3