|
@@ -3,25 +3,6 @@
|
|
|
|
|
|
using namespace chessy;
|
|
|
|
|
|
-namespace chessy
|
|
|
-{
|
|
|
- template class PawnPushGenerator<WHITE_SIDE>;
|
|
|
- template class PawnPushGenerator<BLACK_SIDE>;
|
|
|
-
|
|
|
- template class PromotionGenerator<WHITE_SIDE>;
|
|
|
- template class PromotionGenerator<BLACK_SIDE>;
|
|
|
-
|
|
|
- template class PawnDoublePushGenerator<WHITE_SIDE>;
|
|
|
- template class PawnDoublePushGenerator<BLACK_SIDE>;
|
|
|
-
|
|
|
- template class PawnCaptureGenerator<WHITE_SIDE, LEFT>;
|
|
|
- template class PawnCaptureGenerator<WHITE_SIDE, RIGHT>;
|
|
|
- template class PawnCaptureGenerator<BLACK_SIDE, LEFT>;
|
|
|
- template class PawnCaptureGenerator<BLACK_SIDE, RIGHT>;
|
|
|
-
|
|
|
- template class CastlingGenerator<WHITE_SIDE>;
|
|
|
- template class CastlingGenerator<BLACK_SIDE>;
|
|
|
-}
|
|
|
|
|
|
|
|
|
template<Side side>
|
|
@@ -225,3 +206,23 @@ CastlingGenerator<side>::CastlingGenerator(const ChessGame& game) :
|
|
|
}
|
|
|
|
|
|
|
|
|
+// explicit instatiations
|
|
|
+namespace chessy
|
|
|
+{
|
|
|
+ template class PawnPushGenerator<WHITE_SIDE>;
|
|
|
+ template class PawnPushGenerator<BLACK_SIDE>;
|
|
|
+
|
|
|
+ template class PromotionGenerator<WHITE_SIDE>;
|
|
|
+ template class PromotionGenerator<BLACK_SIDE>;
|
|
|
+
|
|
|
+ template class PawnDoublePushGenerator<WHITE_SIDE>;
|
|
|
+ template class PawnDoublePushGenerator<BLACK_SIDE>;
|
|
|
+
|
|
|
+ template class PawnCaptureGenerator<WHITE_SIDE, LEFT>;
|
|
|
+ template class PawnCaptureGenerator<WHITE_SIDE, RIGHT>;
|
|
|
+ template class PawnCaptureGenerator<BLACK_SIDE, LEFT>;
|
|
|
+ template class PawnCaptureGenerator<BLACK_SIDE, RIGHT>;
|
|
|
+
|
|
|
+ template class CastlingGenerator<WHITE_SIDE>;
|
|
|
+ template class CastlingGenerator<BLACK_SIDE>;
|
|
|
+}
|