Action Engine
Loading...
Searching...
No Matches
strbin.h
1// Copyright 2025 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15#ifndef ACTIONENGINE_MSGPACK_STRBIN_H
16#define ACTIONENGINE_MSGPACK_STRBIN_H
17
18#include "actionengine/msgpack/core_helpers.h"
19
20namespace act::msgpack {
21absl::StatusOr<uint32_t> GetStrOrBinExtent(const LookupPointer& data,
22 std::string_view type_for_error);
23
24absl::StatusOr<uint32_t> EgltMsgpackGetExtent(const LookupPointer& data,
25 std::string* absl_nullable);
26
27absl::Status EgltMsgpackSerialize(const std::string& value,
28 const InsertInfo& insert);
29
30absl::StatusOr<uint32_t> EgltMsgpackDeserializeBin(
31 const LookupPointer& data, std::vector<Byte>* absl_nonnull output);
32
33absl::StatusOr<uint32_t> EgltMsgpackDeserialize(
34 const LookupPointer& data, std::string* absl_nonnull output);
35
36absl::StatusOr<uint32_t> EgltMsgpackGetExtent(const LookupPointer& data,
37 std::vector<Byte>* absl_nullable);
38
39absl::Status EgltMsgpackSerialize(const std::vector<uint8_t>& value,
40 const InsertInfo& insert);
41
42absl::StatusOr<uint32_t> EgltMsgpackDeserialize(
43 const LookupPointer& data, std::vector<uint8_t>* absl_nonnull output);
44
45} // namespace act::msgpack
46
47#endif // ACTIONENGINE_MSGPACK_STRBIN_H