This commit is contained in:
2022-04-16 03:35:20 +08:00
parent ae51d8c622
commit d1a6b1d83f
11 changed files with 142 additions and 74 deletions
+1 -1
View File
@@ -8,7 +8,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "server", "server.vcxproj",
{8081FDAA-4D13-4B7A-ADB2-8224AF7F1C81} = {8081FDAA-4D13-4B7A-ADB2-8224AF7F1C81}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Project1", "..\Project1\Project1.vcxproj", "{8081FDAA-4D13-4B7A-ADB2-8224AF7F1C81}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "msc-plugin", "..\msc-plugin\msc-plugin.vcxproj", "{8081FDAA-4D13-4B7A-ADB2-8224AF7F1C81}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
+33
View File
@@ -103,6 +103,39 @@ struct TableInfo {
template <size_t ...Idxs>
using getRecordType = typename GetTypes<Idxs...>::type;
TableInfo(const char* name, uint32_t n_cols);
//template<size_t ...Idxs = Types...>
//struct Iterator_t {
// uint32_t val;
// const TableInfo* info;
// constexpr Iterator_t(const uint32_t* val, const TableInfo* info) noexcept : val(val), info(info) {}
// getRecordType<Idxs...> operator*() {
// return getRecordType<Idxs...>(info->colrefs[Idxs].operator[](*val)...);
// }
// bool operator != (const Iterator_t& rhs) { return rhs.val != val; }
// Iterator_t& operator++ () {
// ++val;
// return *this;
// }
// Iterator_t operator++ (int) {
// Iterator_t tmp = *this;
// ++val;
// return tmp;
// }
//};
//template<size_t ...Idxs = Types...>
//Iterator_t<Idxs...> begin() const {
//
//}
//template<size_t ...Idxs = Types...>
//Iterator_t<Idxs...> end() const {
//
//}
//
//template<int ...Cols, bool ...ord>
//order_by() {
// vector_type<uint32_t> order(colrefs[0].size);
// std::sort(this->begin<Cols>)
//}
};
template <size_t _Index, class... _Types>