#define ITER_T item_iterator_t<NODE_TYPE>
#define ITER_INST(NT) item_iterator_t<NT>
-#define ITER_TEMPLATE(NT) template class ITER_INST(NT)
-ITER_TEMPLATE(node_type_t::LEAF);
-ITER_TEMPLATE(node_type_t::INTERNAL);
template <node_type_t NODE_TYPE>
template <KeyT KT>
return trim_size;
}
+#define ITER_TEMPLATE(NT) template class ITER_INST(NT)
+ITER_TEMPLATE(node_type_t::LEAF);
+ITER_TEMPLATE(node_type_t::INTERNAL);
+
#define APPEND_T ITER_T::Appender<KT>
-template class ITER_INST(node_type_t::LEAF)::Appender<KeyT::VIEW>;
-template class ITER_INST(node_type_t::INTERNAL)::Appender<KeyT::VIEW>;
-template class ITER_INST(node_type_t::LEAF)::Appender<KeyT::HOBJ>;
-template class ITER_INST(node_type_t::INTERNAL)::Appender<KeyT::HOBJ>;
template <node_type_t NODE_TYPE>
template <KeyT KT>
p_append = _p_append;
}
+#define APPEND_TEMPLATE(NT, KT) template class ITER_INST(NT)::Appender<KT>
+APPEND_TEMPLATE(node_type_t::LEAF, KeyT::VIEW);
+APPEND_TEMPLATE(node_type_t::INTERNAL, KeyT::VIEW);
+APPEND_TEMPLATE(node_type_t::LEAF, KeyT::HOBJ);
+APPEND_TEMPLATE(node_type_t::INTERNAL, KeyT::HOBJ);
+
}
#define NODE_T node_extent_t<FieldType, NODE_TYPE>
#define NODE_INST(FT, NT) node_extent_t<FT, NT>
-#define NODE_TEMPLATE(FT, NT) template class NODE_INST(FT, NT)
-NODE_TEMPLATE(node_fields_0_t, node_type_t::INTERNAL);
-NODE_TEMPLATE(node_fields_1_t, node_type_t::INTERNAL);
-NODE_TEMPLATE(node_fields_2_t, node_type_t::INTERNAL);
-NODE_TEMPLATE(internal_fields_3_t, node_type_t::INTERNAL);
-NODE_TEMPLATE(node_fields_0_t, node_type_t::LEAF);
-NODE_TEMPLATE(node_fields_1_t, node_type_t::LEAF);
-NODE_TEMPLATE(node_fields_2_t, node_type_t::LEAF);
-NODE_TEMPLATE(leaf_fields_3_t, node_type_t::LEAF);
template <typename FieldType, node_type_t NODE_TYPE>
const char* NODE_T::p_left_bound() const {
return 0;
}
+#define NODE_TEMPLATE(FT, NT) template class NODE_INST(FT, NT)
+NODE_TEMPLATE(node_fields_0_t, node_type_t::INTERNAL);
+NODE_TEMPLATE(node_fields_1_t, node_type_t::INTERNAL);
+NODE_TEMPLATE(node_fields_2_t, node_type_t::INTERNAL);
+NODE_TEMPLATE(internal_fields_3_t, node_type_t::INTERNAL);
+NODE_TEMPLATE(node_fields_0_t, node_type_t::LEAF);
+NODE_TEMPLATE(node_fields_1_t, node_type_t::LEAF);
+NODE_TEMPLATE(node_fields_2_t, node_type_t::LEAF);
+NODE_TEMPLATE(leaf_fields_3_t, node_type_t::LEAF);
+
#define APPEND_T node_extent_t<FieldType, NODE_TYPE>::Appender<KT>
-#define APPEND_TEMPLATE(FT, NT, KT) template class node_extent_t<FT, NT>::Appender<KT>
-APPEND_TEMPLATE(node_fields_0_t, node_type_t::INTERNAL, KeyT::VIEW);
-APPEND_TEMPLATE(node_fields_1_t, node_type_t::INTERNAL, KeyT::VIEW);
-APPEND_TEMPLATE(node_fields_2_t, node_type_t::INTERNAL, KeyT::VIEW);
-APPEND_TEMPLATE(internal_fields_3_t, node_type_t::INTERNAL, KeyT::VIEW);
-APPEND_TEMPLATE(node_fields_0_t, node_type_t::LEAF, KeyT::VIEW);
-APPEND_TEMPLATE(node_fields_1_t, node_type_t::LEAF, KeyT::VIEW);
-APPEND_TEMPLATE(node_fields_2_t, node_type_t::LEAF, KeyT::VIEW);
-APPEND_TEMPLATE(leaf_fields_3_t, node_type_t::LEAF, KeyT::VIEW);
-APPEND_TEMPLATE(node_fields_0_t, node_type_t::INTERNAL, KeyT::HOBJ);
-APPEND_TEMPLATE(node_fields_1_t, node_type_t::INTERNAL, KeyT::HOBJ);
-APPEND_TEMPLATE(node_fields_2_t, node_type_t::INTERNAL, KeyT::HOBJ);
-APPEND_TEMPLATE(internal_fields_3_t, node_type_t::INTERNAL, KeyT::HOBJ);
-APPEND_TEMPLATE(node_fields_0_t, node_type_t::LEAF, KeyT::HOBJ);
-APPEND_TEMPLATE(node_fields_1_t, node_type_t::LEAF, KeyT::HOBJ);
-APPEND_TEMPLATE(node_fields_2_t, node_type_t::LEAF, KeyT::HOBJ);
-APPEND_TEMPLATE(leaf_fields_3_t, node_type_t::LEAF, KeyT::HOBJ);
template <typename FieldType, node_type_t NODE_TYPE>
template <KeyT KT>
return p_append_left;
}
+#define APPEND_TEMPLATE(FT, NT, KT) template class node_extent_t<FT, NT>::Appender<KT>
+APPEND_TEMPLATE(node_fields_0_t, node_type_t::INTERNAL, KeyT::VIEW);
+APPEND_TEMPLATE(node_fields_1_t, node_type_t::INTERNAL, KeyT::VIEW);
+APPEND_TEMPLATE(node_fields_2_t, node_type_t::INTERNAL, KeyT::VIEW);
+APPEND_TEMPLATE(internal_fields_3_t, node_type_t::INTERNAL, KeyT::VIEW);
+APPEND_TEMPLATE(node_fields_0_t, node_type_t::LEAF, KeyT::VIEW);
+APPEND_TEMPLATE(node_fields_1_t, node_type_t::LEAF, KeyT::VIEW);
+APPEND_TEMPLATE(node_fields_2_t, node_type_t::LEAF, KeyT::VIEW);
+APPEND_TEMPLATE(leaf_fields_3_t, node_type_t::LEAF, KeyT::VIEW);
+APPEND_TEMPLATE(node_fields_0_t, node_type_t::INTERNAL, KeyT::HOBJ);
+APPEND_TEMPLATE(node_fields_1_t, node_type_t::INTERNAL, KeyT::HOBJ);
+APPEND_TEMPLATE(node_fields_2_t, node_type_t::INTERNAL, KeyT::HOBJ);
+APPEND_TEMPLATE(internal_fields_3_t, node_type_t::INTERNAL, KeyT::HOBJ);
+APPEND_TEMPLATE(node_fields_0_t, node_type_t::LEAF, KeyT::HOBJ);
+APPEND_TEMPLATE(node_fields_1_t, node_type_t::LEAF, KeyT::HOBJ);
+APPEND_TEMPLATE(node_fields_2_t, node_type_t::LEAF, KeyT::HOBJ);
+APPEND_TEMPLATE(leaf_fields_3_t, node_type_t::LEAF, KeyT::HOBJ);
+
}