folly/folly/detail/base64_detail/Base64SWAR.cpp

/*
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * 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.
 */

#include <array>
#include <cstring>
#include <folly/Portability.h>
#include <folly/detail/base64_detail/Base64Constants.h>
#include <folly/detail/base64_detail/Base64HiddenConstants.h>
#include <folly/detail/base64_detail/Base64SWAR.h>
#include <folly/detail/base64_detail/Base64Scalar.h>

namespace folly::detail::base64_detail {
namespace {

// Practically same code that is for constexpr version, but these use SWAR
// tables to avoid having extra constants.
char* base64DecodeTailSWAR(
    const char* f, char* o, std::uint32_t& errorAccumulator) {}

char* base64URLDecodeTailSWAR(
    const char* f, const char* l, char* o, std::uint32_t& errorAccumulator) {}

kBase64SwarDecodeTable;

template <bool isURL>
std::uint32_t base64DecodeSWARMainLoop(
    const char*& f, const char* l, char*& o) noexcept {}

} // namespace

Base64DecodeResult base64DecodeSWAR(
    const char* f, const char* l, char* o) noexcept {}

Base64DecodeResult base64URLDecodeSWAR(
    const char* f, const char* l, char* o) noexcept {}

} // namespace folly::detail::base64_detail