// Copyright 2018 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef SQL_STATEMENT_ID_H_ #define SQL_STATEMENT_ID_H_ #include <cstddef> #include "base/component_export.h" namespace sql { // Identifies a compiled SQLite statement in a statement cache. // // This is a value type with the same performance characteristics as // std::string_view. Instances are thread-unsafe, but not thread-hostile. // // StatementID instances should be constructed by using the SQL_FROM_HERE // macro, which produces an unique ID based on the source file name and line. class COMPONENT_EXPORT(SQL) StatementID { … }; } // namespace sql // Produces a StatementID based on the current line in the source tree. #define SQL_FROM_HERE … #endif // SQL_STATEMENT_ID_H_