#ifndef SRC_TRACE_PROCESSOR_PERFETTO_SQL_ENGINE_FUNCTION_UTIL_H_
#define SRC_TRACE_PROCESSOR_PERFETTO_SQL_ENGINE_FUNCTION_UTIL_H_
#include <sqlite3.h>
#include <optional>
#include <string>
#include "perfetto/base/status.h"
#include "perfetto/ext/base/string_view.h"
#include "src/trace_processor/util/sql_argument.h"
namespace perfetto {
namespace trace_processor {
struct FunctionPrototype { … };
base::Status ParseFunctionName(base::StringView raw,
base::StringView& function_name);
base::Status ParsePrototype(base::StringView raw, FunctionPrototype& out);
base::Status SqliteRetToStatus(sqlite3* db,
const std::string& function_name,
int ret);
base::Status MaybeBindArgument(sqlite3_stmt*,
const std::string& function_name,
const sql_argument::ArgumentDefinition&,
sqlite3_value*);
base::Status MaybeBindIntArgument(sqlite3_stmt*,
const std::string& function_name,
const sql_argument::ArgumentDefinition&,
int64_t);
}
}
#endif