tp: move preprocessor into its own folder
Change-Id: Iefb41123a46e4893a34785f805c028e3aacccc05
diff --git a/Android.bp b/Android.bp
index d0c7a89..c066dd8 100644
--- a/Android.bp
+++ b/Android.bp
@@ -2509,6 +2509,7 @@
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_interface",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":perfetto_src_trace_processor_sorter_sorter",
":perfetto_src_trace_processor_sqlite_bindings_bindings",
":perfetto_src_trace_processor_sqlite_sqlite",
@@ -13228,19 +13229,22 @@
"src/trace_processor/perfetto_sql/engine/function_util.cc",
"src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.cc",
"src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.cc",
- "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.cc",
"src/trace_processor/perfetto_sql/engine/runtime_table_function.cc",
"src/trace_processor/perfetto_sql/engine/table_pointer_module.cc",
],
}
+// GN: //src/trace_processor/perfetto_sql/engine:test_utils
+filegroup {
+ name: "perfetto_src_trace_processor_perfetto_sql_engine_test_utils",
+}
+
// GN: //src/trace_processor/perfetto_sql/engine:unittests
filegroup {
name: "perfetto_src_trace_processor_perfetto_sql_engine_unittests",
srcs: [
"src/trace_processor/perfetto_sql/engine/perfetto_sql_engine_unittest.cc",
"src/trace_processor/perfetto_sql/engine/perfetto_sql_parser_unittest.cc",
- "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor_unittest.cc",
],
}
@@ -13417,6 +13421,22 @@
name: "perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
}
+// GN: //src/trace_processor/perfetto_sql/preprocessor:preprocessor
+filegroup {
+ name: "perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
+ srcs: [
+ "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.cc",
+ ],
+}
+
+// GN: //src/trace_processor/perfetto_sql/preprocessor:unittests
+filegroup {
+ name: "perfetto_src_trace_processor_perfetto_sql_preprocessor_unittests",
+ srcs: [
+ "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor_unittest.cc",
+ ],
+}
+
// GN: //src/trace_processor/perfetto_sql/stdlib:stdlib
genrule {
name: "perfetto_src_trace_processor_perfetto_sql_stdlib_stdlib",
@@ -15523,6 +15543,7 @@
":perfetto_src_trace_processor_metrics_metrics",
":perfetto_src_trace_processor_metrics_unittests",
":perfetto_src_trace_processor_perfetto_sql_engine_engine",
+ ":perfetto_src_trace_processor_perfetto_sql_engine_test_utils",
":perfetto_src_trace_processor_perfetto_sql_engine_unittests",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_functions_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_functions_interface",
@@ -15533,6 +15554,8 @@
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_unittests",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_unittests",
":perfetto_src_trace_processor_rpc_rpc",
":perfetto_src_trace_processor_rpc_unittests",
":perfetto_src_trace_processor_sorter_sorter",
@@ -16578,6 +16601,7 @@
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_interface",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":perfetto_src_trace_processor_rpc_httpd",
":perfetto_src_trace_processor_rpc_rpc",
":perfetto_src_trace_processor_rpc_stdiod",
@@ -16989,6 +17013,7 @@
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_interface",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":perfetto_src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":perfetto_src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":perfetto_src_trace_processor_sorter_sorter",
":perfetto_src_trace_processor_sqlite_bindings_bindings",
":perfetto_src_trace_processor_sqlite_sqlite",
diff --git a/BUILD b/BUILD
index 905fe46..8a632cb 100644
--- a/BUILD
+++ b/BUILD
@@ -267,6 +267,7 @@
":src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":src_trace_processor_perfetto_sql_intrinsics_table_functions_tables",
":src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":src_trace_processor_rpc_rpc",
":src_trace_processor_sorter_sorter",
":src_trace_processor_sqlite_bindings_bindings",
@@ -2422,8 +2423,6 @@
"src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.h",
"src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.cc",
"src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.h",
- "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.cc",
- "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h",
"src/trace_processor/perfetto_sql/engine/runtime_table_function.cc",
"src/trace_processor/perfetto_sql/engine/runtime_table_function.h",
"src/trace_processor/perfetto_sql/engine/table_pointer_module.cc",
@@ -2578,6 +2577,15 @@
],
)
+# GN target: //src/trace_processor/perfetto_sql/preprocessor:preprocessor
+perfetto_filegroup(
+ name = "src_trace_processor_perfetto_sql_preprocessor_preprocessor",
+ srcs = [
+ "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.cc",
+ "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h",
+ ],
+)
+
# GN target: //src/trace_processor/perfetto_sql/stdlib/android/auto:auto
perfetto_filegroup(
name = "src_trace_processor_perfetto_sql_stdlib_android_auto_auto",
@@ -6308,6 +6316,7 @@
":src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":src_trace_processor_perfetto_sql_intrinsics_table_functions_tables",
":src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":src_trace_processor_sorter_sorter",
":src_trace_processor_sqlite_bindings_bindings",
":src_trace_processor_sqlite_sqlite",
@@ -6499,6 +6508,7 @@
":src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":src_trace_processor_perfetto_sql_intrinsics_table_functions_tables",
":src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":src_trace_processor_rpc_httpd",
":src_trace_processor_rpc_rpc",
":src_trace_processor_rpc_stdiod",
@@ -6747,6 +6757,7 @@
":src_trace_processor_perfetto_sql_intrinsics_table_functions_table_functions",
":src_trace_processor_perfetto_sql_intrinsics_table_functions_tables",
":src_trace_processor_perfetto_sql_intrinsics_types_types",
+ ":src_trace_processor_perfetto_sql_preprocessor_preprocessor",
":src_trace_processor_sorter_sorter",
":src_trace_processor_sqlite_bindings_bindings",
":src_trace_processor_sqlite_sqlite",
diff --git a/src/trace_processor/BUILD.gn b/src/trace_processor/BUILD.gn
index 5375ded..4539b5a 100644
--- a/src/trace_processor/BUILD.gn
+++ b/src/trace_processor/BUILD.gn
@@ -327,6 +327,7 @@
"perfetto_sql/intrinsics/functions:unittests",
"perfetto_sql/intrinsics/operators:unittests",
"perfetto_sql/intrinsics/table_functions:unittests",
+ "perfetto_sql/preprocessor:unittests",
"sqlite:unittests",
]
}
diff --git a/src/trace_processor/perfetto_sql/engine/BUILD.gn b/src/trace_processor/perfetto_sql/engine/BUILD.gn
index a721a51..5a67347 100644
--- a/src/trace_processor/perfetto_sql/engine/BUILD.gn
+++ b/src/trace_processor/perfetto_sql/engine/BUILD.gn
@@ -26,8 +26,6 @@
"perfetto_sql_engine.h",
"perfetto_sql_parser.cc",
"perfetto_sql_parser.h",
- "perfetto_sql_preprocessor.cc",
- "perfetto_sql_preprocessor.h",
"runtime_table_function.cc",
"runtime_table_function.h",
"table_pointer_module.cc",
@@ -50,6 +48,7 @@
"../../util",
"../../util:sql_argument",
"../../util:stdlib",
+ "../preprocessor",
]
}
@@ -58,11 +57,25 @@
sources = [
"perfetto_sql_engine_unittest.cc",
"perfetto_sql_parser_unittest.cc",
- "perfetto_sql_preprocessor_unittest.cc",
- "perfetto_sql_test_utils.h",
]
deps = [
":engine",
+ ":test_utils",
+ "../../../../gn:default_deps",
+ "../../../../gn:gtest_and_gmock",
+ "../../../../gn:sqlite",
+ "../../../base",
+ "../..//tables:tables_python",
+ "../../perfetto_sql/intrinsics/table_functions:interface",
+ "../../sqlite",
+ ]
+}
+
+perfetto_unittest_source_set("test_utils") {
+ testonly = true
+ sources = [ "perfetto_sql_test_utils.h" ]
+ deps = [
+ ":engine",
"../../../../gn:default_deps",
"../../../../gn:gtest_and_gmock",
"../../../../gn:sqlite",
diff --git a/src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.cc b/src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.cc
index b7951d8..1a3443f 100644
--- a/src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.cc
+++ b/src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.cc
@@ -46,9 +46,9 @@
#include "src/trace_processor/perfetto_sql/engine/created_function.h"
#include "src/trace_processor/perfetto_sql/engine/function_util.h"
#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.h"
-#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h"
#include "src/trace_processor/perfetto_sql/engine/runtime_table_function.h"
#include "src/trace_processor/perfetto_sql/intrinsics/table_functions/static_table_function.h"
+#include "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h"
#include "src/trace_processor/sqlite/db_sqlite_table.h"
#include "src/trace_processor/sqlite/scoped_db.h"
#include "src/trace_processor/sqlite/sql_source.h"
diff --git a/src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.h b/src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.h
index 50eb1ff..a4a2777 100644
--- a/src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.h
+++ b/src/trace_processor/perfetto_sql/engine/perfetto_sql_engine.h
@@ -35,10 +35,10 @@
#include "src/trace_processor/db/table.h"
#include "src/trace_processor/perfetto_sql/engine/function_util.h"
#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.h"
-#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h"
#include "src/trace_processor/perfetto_sql/engine/runtime_table_function.h"
#include "src/trace_processor/perfetto_sql/intrinsics/functions/sql_function.h"
#include "src/trace_processor/perfetto_sql/intrinsics/table_functions/static_table_function.h"
+#include "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h"
#include "src/trace_processor/sqlite/bindings/sqlite_result.h"
#include "src/trace_processor/sqlite/bindings/sqlite_window_function.h"
#include "src/trace_processor/sqlite/db_sqlite_table.h"
diff --git a/src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.cc b/src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.cc
index 8ba8ea8..d6b1dee 100644
--- a/src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.cc
+++ b/src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.cc
@@ -29,7 +29,7 @@
#include "perfetto/base/status.h"
#include "perfetto/ext/base/flat_hash_map.h"
#include "perfetto/ext/base/string_utils.h"
-#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h"
+#include "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h"
#include "src/trace_processor/sqlite/sql_source.h"
#include "src/trace_processor/sqlite/sqlite_tokenizer.h"
diff --git a/src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.h b/src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.h
index bafa3e7..60d21ce 100644
--- a/src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.h
+++ b/src/trace_processor/perfetto_sql/engine/perfetto_sql_parser.h
@@ -25,7 +25,7 @@
#include "function_util.h"
#include "perfetto/ext/base/flat_hash_map.h"
-#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h"
+#include "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h"
#include "src/trace_processor/sqlite/sql_source.h"
#include "src/trace_processor/sqlite/sqlite_tokenizer.h"
diff --git a/src/trace_processor/perfetto_sql/preprocessor/BUILD.gn b/src/trace_processor/perfetto_sql/preprocessor/BUILD.gn
new file mode 100644
index 0000000..1ee774e
--- /dev/null
+++ b/src/trace_processor/perfetto_sql/preprocessor/BUILD.gn
@@ -0,0 +1,44 @@
+# Copyright (C) 2024 The Android Open Source Project
+#
+# 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.
+
+import("../../../../gn/test.gni")
+
+assert(enable_perfetto_trace_processor_sqlite)
+
+source_set("preprocessor") {
+ sources = [
+ "perfetto_sql_preprocessor.cc",
+ "perfetto_sql_preprocessor.h",
+ ]
+ deps = [
+ "../../../../gn:default_deps",
+ "../../../base",
+ "../../sqlite",
+ "../../util",
+ ]
+}
+
+perfetto_unittest_source_set("unittests") {
+ testonly = true
+ sources = [ "perfetto_sql_preprocessor_unittest.cc" ]
+ deps = [
+ ":preprocessor",
+ "../../../../gn:default_deps",
+ "../../../../gn:gtest_and_gmock",
+ "../../../../gn:sqlite",
+ "../../../base",
+ "../../sqlite",
+ "../engine:test_utils",
+ ]
+}
diff --git a/src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.cc b/src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.cc
similarity index 99%
rename from src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.cc
rename to src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.cc
index b45d7d7..1033fe7 100644
--- a/src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.cc
+++ b/src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.cc
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h"
+#include "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h"
#include <algorithm>
#include <cstddef>
diff --git a/src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h b/src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h
similarity index 93%
rename from src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h
rename to src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h
index 1ccd0a3..4991724 100644
--- a/src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h
+++ b/src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h
@@ -14,8 +14,8 @@
* limitations under the License.
*/
-#ifndef SRC_TRACE_PROCESSOR_PERFETTO_SQL_ENGINE_PERFETTO_SQL_PREPROCESSOR_H_
-#define SRC_TRACE_PROCESSOR_PERFETTO_SQL_ENGINE_PERFETTO_SQL_PREPROCESSOR_H_
+#ifndef SRC_TRACE_PROCESSOR_PERFETTO_SQL_PREPROCESSOR_PERFETTO_SQL_PREPROCESSOR_H_
+#define SRC_TRACE_PROCESSOR_PERFETTO_SQL_PREPROCESSOR_PERFETTO_SQL_PREPROCESSOR_H_
#include <optional>
#include <string>
@@ -113,4 +113,4 @@
} // namespace perfetto::trace_processor
-#endif // SRC_TRACE_PROCESSOR_PERFETTO_SQL_ENGINE_PERFETTO_SQL_PREPROCESSOR_H_
+#endif // SRC_TRACE_PROCESSOR_PERFETTO_SQL_PREPROCESSOR_PERFETTO_SQL_PREPROCESSOR_H_
diff --git a/src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor_unittest.cc b/src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor_unittest.cc
similarity index 99%
rename from src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor_unittest.cc
rename to src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor_unittest.cc
index a7fc128..9c24cb1 100644
--- a/src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor_unittest.cc
+++ b/src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor_unittest.cc
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "src/trace_processor/perfetto_sql/engine/perfetto_sql_preprocessor.h"
+#include "src/trace_processor/perfetto_sql/preprocessor/perfetto_sql_preprocessor.h"
#include <string>