#ifndef SRC_TRACE_PROCESSOR_PERFETTO_SQL_ENGINE_PERFETTO_SQL_TEST_UTILS_H_
#define SRC_TRACE_PROCESSOR_PERFETTO_SQL_ENGINE_PERFETTO_SQL_TEST_UTILS_H_
#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.h"
#include "src/trace_processor/sqlite/sql_source.h"
#include "test/gtest_and_gmock.h"
namespace perfetto {
namespace trace_processor {
inline bool operator==(const SqlSource& a, const SqlSource& b) { … }
inline bool operator==(const PerfettoSqlParser::SqliteSql&,
const PerfettoSqlParser::SqliteSql&) { … }
inline bool operator==(const PerfettoSqlParser::CreateFunction& a,
const PerfettoSqlParser::CreateFunction& b) { … }
inline bool operator==(const PerfettoSqlParser::CreateTable& a,
const PerfettoSqlParser::CreateTable& b) { … }
inline bool operator==(const PerfettoSqlParser::CreateView& a,
const PerfettoSqlParser::CreateView& b) { … }
inline bool operator==(const PerfettoSqlParser::Include& a,
const PerfettoSqlParser::Include& b) { … }
constexpr bool operator==(const PerfettoSqlParser::CreateMacro& a,
const PerfettoSqlParser::CreateMacro& b) { … }
constexpr bool operator==(const PerfettoSqlParser::CreateIndex& a,
const PerfettoSqlParser::CreateIndex& b) { … }
constexpr bool operator==(const PerfettoSqlParser::DropIndex& a,
const PerfettoSqlParser::DropIndex& b) { … }
inline std::ostream& operator<<(std::ostream& stream, const SqlSource& sql) { … }
inline std::ostream& operator<<(std::ostream& stream,
const PerfettoSqlParser::Statement& line) { … }
template <typename T>
inline bool operator==(const base::StatusOr<T>& a, const base::StatusOr<T>& b) { … }
inline std::ostream& operator<<(std::ostream& stream, const base::Status& a) { … }
template <typename T>
inline std::ostream& operator<<(std::ostream& stream,
const base::StatusOr<T>& a) { … }
inline SqlSource FindSubstr(const SqlSource& source,
const std::string& needle) { … }
}
}
#endif