#include "tensorflow/lite/util.h"
#include <algorithm>
#include <complex>
#include <cstddef>
#include <cstring>
#include <initializer_list>
#include <memory>
#include <string>
#include <vector>
#include "tensorflow/lite/array.h"
#include "tensorflow/lite/builtin_ops.h"
#include "tensorflow/lite/core/c/common.h"
#include "tensorflow/lite/core/macros.h"
#include "tensorflow/lite/schema/schema_generated.h"
namespace tflite {
namespace {
TfLiteStatus UnresolvedOpInvoke(TfLiteContext* context, TfLiteNode* node) { … }
}
bool IsFlexOp(const char* custom_name) { … }
TfLiteIntArray* ConvertVectorToTfLiteIntArray(const std::vector<int>& input) { … }
TfLiteIntArray* ConvertArrayToTfLiteIntArray(const int ndims, const int* dims) { … }
bool EqualArrayAndTfLiteIntArray(const TfLiteIntArray* a, const int b_size,
const int* b) { … }
size_t CombineHashes(std::initializer_list<size_t> hashes) { … }
TfLiteStatus GetSizeOfType(TfLiteContext* context, const TfLiteType type,
size_t* bytes) { … }
TfLiteRegistration CreateUnresolvedCustomOp(const char* custom_op_name) { … }
bool IsUnresolvedCustomOp(const TfLiteRegistration& registration) { … }
std::string GetOpNameByRegistration(const TfLiteRegistration& registration) { … }
bool IsValidationSubgraph(const char* name) { … }
TfLiteStatus MultiplyAndCheckOverflow(size_t a, size_t b, size_t* product) { … }
TfLiteStatus BytesRequired(TfLiteType type, const int* dims, size_t dims_size,
size_t* bytes, TfLiteContext* context_) { … }
TensorUniquePtr BuildTfLiteTensor() { … }
TensorUniquePtr BuildTfLiteTensor(TfLiteType type, const std::vector<int>& dims,
TfLiteAllocationType allocation_type) { … }
TensorUniquePtr BuildTfLiteTensor(TfLiteType type, IntArrayUniquePtr dims,
TfLiteAllocationType allocation_type) { … }
}