aboutsummaryrefslogtreecommitdiff
path: root/common/libs/utils/cf_endian.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/libs/utils/cf_endian.h')
-rw-r--r--common/libs/utils/cf_endian.h56
1 files changed, 0 insertions, 56 deletions
diff --git a/common/libs/utils/cf_endian.h b/common/libs/utils/cf_endian.h
deleted file mode 100644
index 6eb5dd192..000000000
--- a/common/libs/utils/cf_endian.h
+++ /dev/null
@@ -1,56 +0,0 @@
-//
-// Copyright (C) 2020 The Android Open Source Project
-//
-// 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.
-
-#pragma once
-
-#include <inttypes.h>
-
-#include <android-base/endian.h>
-
-// The utilities in android-base/endian.h still require the use of regular int
-// types to store values with any endianness, which requires the user to
-// remember to manually do the required conversions, which is prone to errors.
-// The types introduced here allow handling these values safely.
-
-namespace cuttlefish {
-
-#define DECLARE_TYPE(new_type, base_type, to_new, to_base) \
- class new_type { \
- public: \
- new_type() = default; \
- explicit new_type(base_type val) : inner_(to_new(val)) {} \
- new_type(const new_type&) = default; \
- new_type& operator=(const new_type& other) = default; \
- volatile new_type& operator=(const new_type& other) volatile { \
- inner_ = other.inner_; \
- return *this; \
- } \
- base_type as_##base_type() const volatile { return to_base(inner_); } \
- \
- private: \
- base_type inner_; \
- }; \
- static_assert(sizeof(new_type) == sizeof(base_type))
-
-DECLARE_TYPE(Le16, uint16_t, htole16, le16toh);
-DECLARE_TYPE(Le32, uint32_t, htole32, le32toh);
-DECLARE_TYPE(Le64, uint64_t, htole64, le64toh);
-DECLARE_TYPE(Be16, uint16_t, htobe16, be16toh);
-DECLARE_TYPE(Be32, uint32_t, htobe32, be32toh);
-DECLARE_TYPE(Be64, uint64_t, htobe64, be64toh);
-
-#undef DECLARE_TYPE
-
-} // namespace cuttlefish \ No newline at end of file