 		}
 	}
 
-	public func 指定位置へ打つ事は可能か(先後 先後: 先手後手型, 指定位置: 位置型, 駒: 駒型) -> Bool {
-		if 駒.指定段に打つ事は可能か(先後: 先後, 段: 指定位置.段) {
-			switch 駒.駒面 {
+	public func 指定位置へ打つ事は可能か(先後 先後: 先手後手型, 指定位置: 位置型, 駒種: 駒種型) -> Bool {
+		if 駒種.指定段に打つ事は可能か(先後: 先後, 段: 指定位置.段) {
+			switch 駒種.駒面 {
 			case .歩:
 				// TODO: 打ち歩詰め
 				return 指定位置に歩を打つ事は可能か(手番: 先後, 位置: 指定位置) // 二歩・打ち歩詰めの確認

	}

	public var description: String {
		for (key, value) in 駒型.記号表 {
			if value == self {
				return key
			}

			string += "先手" + captured.string + "\r"
		}
		return string
	}

	public func 持駒(先後: 先手後手型) -> 持駒型 {
		return 持駒辞書[先後]!
	}

	public func 指定位置の駒の移動可能位置列(指定位置: 位置型) -> [位置型] {
