From 227c2473bd08cbfc4116e007cbe6f84594ed5ee5 Mon Sep 17 00:00:00 2001 From: Your Name Date: Wed, 22 May 2024 16:51:49 +0200 Subject: [PATCH] clean --- .../ArkitDoushiQi.xcodeproj/project.pbxproj | 40 +- .../Views/Historic/DetailGameHistory.swift | 19 +- .../Views/Historic/EnteteHistory.swift | 8 +- .../Views/Historic/History.swift | 15 +- ArkitDoushiQi/DSQ.xcframework/Info.plist | 44 - .../DouShouQiModel.framework/DouShouQiModel | Bin 153536 -> 0 bytes .../Headers/DouShouQiModel-Swift.h | 311 - .../Headers/DouShouQiModel.h | 18 - .../DouShouQiModel.framework/Info.plist | Bin 763 -> 0 bytes .../arm64-apple-ios.abi.json | 8173 ----------------- .../arm64-apple-ios.private.swiftinterface | 237 - .../arm64-apple-ios.swiftdoc | Bin 684 -> 0 bytes .../arm64-apple-ios.swiftinterface | 237 - .../Modules/module.modulemap | 11 - .../DouShouQiModel.framework/DouShouQiModel | Bin 336720 -> 0 bytes .../Headers/DouShouQiModel-Swift.h | 618 -- .../Headers/DouShouQiModel.h | 18 - .../DouShouQiModel.framework/Info.plist | Bin 743 -> 0 bytes .../arm64-apple-ios-simulator.abi.json | 8173 ----------------- ...apple-ios-simulator.private.swiftinterface | 237 - .../arm64-apple-ios-simulator.swiftdoc | Bin 696 -> 0 bytes .../arm64-apple-ios-simulator.swiftinterface | 237 - .../x86_64-apple-ios-simulator.abi.json | 8173 ----------------- ...apple-ios-simulator.private.swiftinterface | 237 - .../x86_64-apple-ios-simulator.swiftdoc | Bin 696 -> 0 bytes .../x86_64-apple-ios-simulator.swiftinterface | 237 - .../Modules/module.modulemap | 11 - .../_CodeSignature/CodeResources | 245 - 28 files changed, 57 insertions(+), 27242 deletions(-) delete mode 100644 ArkitDoushiQi/DSQ.xcframework/Info.plist delete mode 100755 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/DouShouQiModel delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel.h delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Info.plist delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.abi.json delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.private.swiftinterface delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.swiftdoc delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.swiftinterface delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/module.modulemap delete mode 100755 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/DouShouQiModel delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel.h delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Info.plist delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.abi.json delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftinterface delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/module.modulemap delete mode 100644 ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/_CodeSignature/CodeResources diff --git a/ArkitDoushiQi/ArkitDoushiQi.xcodeproj/project.pbxproj b/ArkitDoushiQi/ArkitDoushiQi.xcodeproj/project.pbxproj index 439040c..6f2bccb 100644 --- a/ArkitDoushiQi/ArkitDoushiQi.xcodeproj/project.pbxproj +++ b/ArkitDoushiQi/ArkitDoushiQi.xcodeproj/project.pbxproj @@ -7,6 +7,9 @@ objects = { /* Begin PBXBuildFile section */ + 82F9D3312BFE3A9F009EDFAF /* DetailGameHistory.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82F9D3302BFE3A9F009EDFAF /* DetailGameHistory.swift */; }; + 82F9D3332BFE3B12009EDFAF /* EnteteHistory.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82F9D3322BFE3B12009EDFAF /* EnteteHistory.swift */; }; + 82F9D3362BFE3B3C009EDFAF /* History.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82F9D3352BFE3B3C009EDFAF /* History.swift */; }; C20310D62BFCB5FB0031657D /* DoushiQiPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = C20310D52BFCB5FB0031657D /* DoushiQiPicker.swift */; }; C20310D82BFCC2410031657D /* ParametersMenuView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C20310D72BFCC2410031657D /* ParametersMenuView.swift */; }; C20310DA2BFCC8600031657D /* ToggleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C20310D92BFCC8600031657D /* ToggleView.swift */; }; @@ -20,7 +23,6 @@ C24659E52BF5FE09004E80D5 /* MainMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = C24659E42BF5FE09004E80D5 /* MainMenu.swift */; }; C24659E92BF60FAA004E80D5 /* MainMenuButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = C24659E82BF60FAA004E80D5 /* MainMenuButton.swift */; }; C2F417702BFE2FBE00CFF0B3 /* howto.md in Resources */ = {isa = PBXBuildFile; fileRef = C2F4176C2BFE2FBD00CFF0B3 /* howto.md */; }; - C2F417712BFE2FBE00CFF0B3 /* DSQ.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C2F4176D2BFE2FBD00CFF0B3 /* DSQ.xcframework */; }; C2F417722BFE2FBE00CFF0B3 /* capture.png in Resources */ = {isa = PBXBuildFile; fileRef = C2F4176E2BFE2FBD00CFF0B3 /* capture.png */; }; C2F417732BFE2FBE00CFF0B3 /* README.md in Resources */ = {isa = PBXBuildFile; fileRef = C2F4176F2BFE2FBD00CFF0B3 /* README.md */; }; /* End PBXBuildFile section */ @@ -42,20 +44,10 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 8203E9092BF60118005F5C4A /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ + 82F9D3302BFE3A9F009EDFAF /* DetailGameHistory.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DetailGameHistory.swift; sourceTree = ""; }; + 82F9D3322BFE3B12009EDFAF /* EnteteHistory.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnteteHistory.swift; sourceTree = ""; }; + 82F9D3352BFE3B3C009EDFAF /* History.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = History.swift; sourceTree = ""; }; C20310D52BFCB5FB0031657D /* DoushiQiPicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DoushiQiPicker.swift; sourceTree = ""; }; C20310D72BFCC2410031657D /* ParametersMenuView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParametersMenuView.swift; sourceTree = ""; }; C20310D92BFCC8600031657D /* ToggleView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ToggleView.swift; sourceTree = ""; }; @@ -82,7 +74,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - C2F417712BFE2FBE00CFF0B3 /* DSQ.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -110,6 +101,16 @@ name = Frameworks; sourceTree = ""; }; + 82F9D32F2BFE3A75009EDFAF /* Historic */ = { + isa = PBXGroup; + children = ( + 82F9D3302BFE3A9F009EDFAF /* DetailGameHistory.swift */, + 82F9D3322BFE3B12009EDFAF /* EnteteHistory.swift */, + 82F9D3352BFE3B3C009EDFAF /* History.swift */, + ); + path = Historic; + sourceTree = ""; + }; C205A2AA2BF373360097BD93 = { isa = PBXGroup; children = ( @@ -146,6 +147,7 @@ C205A2BC2BF373380097BD93 /* Views */ = { isa = PBXGroup; children = ( + 82F9D32F2BFE3A75009EDFAF /* Historic */, C205A2BD2BF373380097BD93 /* Preview Assets.xcassets */, C24659E42BF5FE09004E80D5 /* MainMenu.swift */, C24659E82BF60FAA004E80D5 /* MainMenuButton.swift */, @@ -202,7 +204,6 @@ C205A2AF2BF373360097BD93 /* Sources */, C205A2B02BF373360097BD93 /* Frameworks */, C205A2B12BF373360097BD93 /* Resources */, - 8203E9092BF60118005F5C4A /* Embed Frameworks */, ); buildRules = ( ); @@ -327,11 +328,14 @@ buildActionMask = 2147483647; files = ( C205A2B92BF373360097BD93 /* ContentView.swift in Sources */, + 82F9D3312BFE3A9F009EDFAF /* DetailGameHistory.swift in Sources */, C24659E92BF60FAA004E80D5 /* MainMenuButton.swift in Sources */, C24659E52BF5FE09004E80D5 /* MainMenu.swift in Sources */, + 82F9D3362BFE3B3C009EDFAF /* History.swift in Sources */, C20310D82BFCC2410031657D /* ParametersMenuView.swift in Sources */, C205A2B72BF373360097BD93 /* ArkitDoushiQiApp.swift in Sources */, C20310D62BFCB5FB0031657D /* DoushiQiPicker.swift in Sources */, + 82F9D3332BFE3B12009EDFAF /* EnteteHistory.swift in Sources */, C20310DA2BFCC8600031657D /* ToggleView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -490,7 +494,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_ASSET_PATHS = "\"ArkitDoushiQi/Preview Content\""; + DEVELOPMENT_ASSET_PATHS = "\"ArkitDoushiQi/Views\""; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; @@ -518,7 +522,7 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEVELOPMENT_ASSET_PATHS = "\"ArkitDoushiQi/Preview Content\""; + DEVELOPMENT_ASSET_PATHS = "\"ArkitDoushiQi/Views\""; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; diff --git a/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/DetailGameHistory.swift b/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/DetailGameHistory.swift index 5b6f589..7689cb7 100644 --- a/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/DetailGameHistory.swift +++ b/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/DetailGameHistory.swift @@ -6,15 +6,28 @@ // import SwiftUI +import DouShouQiModel struct DetailGameHistory: View { + + let game:Game + var body: some View { - Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) - } + ZStack(){ + Color.red + Color.gray + HStack(){ + Text(game.players[.player1]?.name ?? "Inconnu") + Text(" VS ") + Text(game.players[.player2]?.name ?? "Inconnu") + Spacer() + } + } + } } struct DetailGameHistory_Previews: PreviewProvider { static var previews: some View { - DetailGameHistory() + DetailGameHistory(game: try! Game(withRules: VerySimpleRules(), andPlayer1: Player(withName: "Player 1 ", andId: .player1)!, andPlayer2: Player(withName: "Player 2 ", andId: .player2)!)) } } diff --git a/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/EnteteHistory.swift b/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/EnteteHistory.swift index d4974b4..1f4bae1 100644 --- a/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/EnteteHistory.swift +++ b/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/EnteteHistory.swift @@ -9,8 +9,12 @@ import SwiftUI struct EnteteHistory: View { var body: some View { - Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) - } + HStack(){ + Spacer() + Text("Historic !") + Spacer() + } + } } struct EnteteHistory_Previews: PreviewProvider { diff --git a/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/History.swift b/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/History.swift index c7f8020..cd5d0e4 100644 --- a/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/History.swift +++ b/ArkitDoushiQi/ArkitDoushiQi/Views/Historic/History.swift @@ -6,11 +6,22 @@ // import SwiftUI +import DouShouQiModel struct History: View { + + var listGame:[Game] = try! [Game(withRules: VerySimpleRules(), andPlayer1: Player(withName: "Player 1 ", andId: .player1)!, andPlayer2: Player(withName: "Player 2 ", andId: .player2)!)] + var body: some View { - Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) - } + VStack(){ + EnteteHistory() + NavigationStack { + List(listGame, id: \.board){ game in + DetailGameHistory(game: game) + } + } + } + } } struct History_Previews: PreviewProvider { diff --git a/ArkitDoushiQi/DSQ.xcframework/Info.plist b/ArkitDoushiQi/DSQ.xcframework/Info.plist deleted file mode 100644 index eb4b36f..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/Info.plist +++ /dev/null @@ -1,44 +0,0 @@ - - - - - AvailableLibraries - - - BinaryPath - DouShouQiModel.framework/DouShouQiModel - LibraryIdentifier - ios-arm64 - LibraryPath - DouShouQiModel.framework - SupportedArchitectures - - arm64 - - SupportedPlatform - ios - - - BinaryPath - DouShouQiModel.framework/DouShouQiModel - LibraryIdentifier - ios-arm64_x86_64-simulator - LibraryPath - DouShouQiModel.framework - SupportedArchitectures - - arm64 - x86_64 - - SupportedPlatform - ios - SupportedPlatformVariant - simulator - - - CFBundlePackageType - XFWK - XCFrameworkFormatVersion - 1.0 - - diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/DouShouQiModel b/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/DouShouQiModel deleted file mode 100755 index 1793e7c98de20df44e9aa1b6dc157289c8ae08f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153536 zcmeFa34B%6wfMi!y&;^NFon#4ngkqff-^G2qPYR2Nx%V!bK3-PNC=8Dr~#D=sWuR7 zy^2zyZGyh` zbt@WP+F2%E^%fAhcEZywcr?}cm6k48eEZUF1f$_K=9uul=P}F6wLu{3{pbVu-Cc3Z zvI(Wjs_wXX$<4P!!<#oLtWxe{Nev9Qr!_%&Z_!h76;C)cOc-dieeUUbuKH$}s{=TZ~iFDxK(eMl4FU0M#mPztt)q4X@dP_p~)xcTCUyV-0|G=2?5CcK9&d6R4F)OaCY zsd9@H#zFLQ4X>1zPA@1aD4llY6?0APZ0lp6RXXZgV9H<69>Kq~^w!1QTCab2ci4>s zo)a&z8I$?jzutPZCw_OVG22-))ODdpC2aP5i<+JWZT?>x# zx8>Pxr)`8xysUTSV7;GZBg1u6I~|3kA8(qsY+m=RXn0vKnfP60At2W$hBtp{x3#tT zq#OPnFI(-k`cweX33rPLjJ%s1?Ql_yU8qTxwD6!I@E zomF(j%*&=1nbN==lVFY4a%%i~UJD#2EJ0u3NWJELvxINS9rKozpErH+^10=Um(Q-a zeDO^;FFMx{=(`s$sf>D{)J019O~!Mn8k~&r)^*JgmwGqb#7gR@Ki{S5I5tdiskBi_ zA?NBU{_?xc`U}RQgU;vQ-|yjzUFyL;9s<&6OU?&B9_)GH;?a*)?*3uY=KIgRko#Hu zO=^ItE5T^5L1XPJcP`IN{5j!wHh-fpe4O}9%5Wz4{MVUB3)Ut?=WOk~xm8P--F(}5 zvnu8;@chc>%J*al@h;fGJmPl#PLJUGjoWczA^B<>7J9l-`!*fBRRAH5xj2IU4

K#<$nf`uhfFar>Q`zTZQ~C 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 diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h b/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h deleted file mode 100644 index d7b3274..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h +++ /dev/null @@ -1,311 +0,0 @@ -#if 0 -#elif defined(__arm64__) && __arm64__ -// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -#ifndef DOUSHOUQIMODEL_SWIFT_H -#define DOUSHOUQIMODEL_SWIFT_H -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgcc-compat" - -#if !defined(__has_include) -# define __has_include(x) 0 -#endif -#if !defined(__has_attribute) -# define __has_attribute(x) 0 -#endif -#if !defined(__has_feature) -# define __has_feature(x) 0 -#endif -#if !defined(__has_warning) -# define __has_warning(x) 0 -#endif - -#if __has_include() -# include -#endif - -#pragma clang diagnostic ignored "-Wauto-import" -#if defined(__OBJC__) -#include -#endif -#if defined(__cplusplus) -#include -#include -#include -#include -#include -#include -#include -#else -#include -#include -#include -#include -#endif -#if defined(__cplusplus) -#if defined(__arm64e__) && __has_include() -# include -#else -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreserved-macro-identifier" -# ifndef __ptrauth_swift_value_witness_function_pointer -# define __ptrauth_swift_value_witness_function_pointer(x) -# endif -# ifndef __ptrauth_swift_class_method_pointer -# define __ptrauth_swift_class_method_pointer(x) -# endif -#pragma clang diagnostic pop -#endif -#endif - -#if !defined(SWIFT_TYPEDEFS) -# define SWIFT_TYPEDEFS 1 -# if __has_include() -# include -# elif !defined(__cplusplus) -typedef uint_least16_t char16_t; -typedef uint_least32_t char32_t; -# endif -typedef float swift_float2 __attribute__((__ext_vector_type__(2))); -typedef float swift_float3 __attribute__((__ext_vector_type__(3))); -typedef float swift_float4 __attribute__((__ext_vector_type__(4))); -typedef double swift_double2 __attribute__((__ext_vector_type__(2))); -typedef double swift_double3 __attribute__((__ext_vector_type__(3))); -typedef double swift_double4 __attribute__((__ext_vector_type__(4))); -typedef int swift_int2 __attribute__((__ext_vector_type__(2))); -typedef int swift_int3 __attribute__((__ext_vector_type__(3))); -typedef int swift_int4 __attribute__((__ext_vector_type__(4))); -typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); -typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); -typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); -#endif - -#if !defined(SWIFT_PASTE) -# define SWIFT_PASTE_HELPER(x, y) x##y -# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) -#endif -#if !defined(SWIFT_METATYPE) -# define SWIFT_METATYPE(X) Class -#endif -#if !defined(SWIFT_CLASS_PROPERTY) -# if __has_feature(objc_class_property) -# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ -# else -# define SWIFT_CLASS_PROPERTY(...) -# endif -#endif -#if !defined(SWIFT_RUNTIME_NAME) -# if __has_attribute(objc_runtime_name) -# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) -# else -# define SWIFT_RUNTIME_NAME(X) -# endif -#endif -#if !defined(SWIFT_COMPILE_NAME) -# if __has_attribute(swift_name) -# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) -# else -# define SWIFT_COMPILE_NAME(X) -# endif -#endif -#if !defined(SWIFT_METHOD_FAMILY) -# if __has_attribute(objc_method_family) -# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) -# else -# define SWIFT_METHOD_FAMILY(X) -# endif -#endif -#if !defined(SWIFT_NOESCAPE) -# if __has_attribute(noescape) -# define SWIFT_NOESCAPE __attribute__((noescape)) -# else -# define SWIFT_NOESCAPE -# endif -#endif -#if !defined(SWIFT_RELEASES_ARGUMENT) -# if __has_attribute(ns_consumed) -# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) -# else -# define SWIFT_RELEASES_ARGUMENT -# endif -#endif -#if !defined(SWIFT_WARN_UNUSED_RESULT) -# if __has_attribute(warn_unused_result) -# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define SWIFT_WARN_UNUSED_RESULT -# endif -#endif -#if !defined(SWIFT_NORETURN) -# if __has_attribute(noreturn) -# define SWIFT_NORETURN __attribute__((noreturn)) -# else -# define SWIFT_NORETURN -# endif -#endif -#if !defined(SWIFT_CLASS_EXTRA) -# define SWIFT_CLASS_EXTRA -#endif -#if !defined(SWIFT_PROTOCOL_EXTRA) -# define SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_ENUM_EXTRA) -# define SWIFT_ENUM_EXTRA -#endif -#if !defined(SWIFT_CLASS) -# if __has_attribute(objc_subclassing_restricted) -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# else -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# endif -#endif -#if !defined(SWIFT_RESILIENT_CLASS) -# if __has_attribute(objc_class_stub) -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) -# else -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) -# endif -#endif -#if !defined(SWIFT_PROTOCOL) -# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_EXTENSION) -# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) -#endif -#if !defined(OBJC_DESIGNATED_INITIALIZER) -# if __has_attribute(objc_designated_initializer) -# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) -# else -# define OBJC_DESIGNATED_INITIALIZER -# endif -#endif -#if !defined(SWIFT_ENUM_ATTR) -# if __has_attribute(enum_extensibility) -# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) -# else -# define SWIFT_ENUM_ATTR(_extensibility) -# endif -#endif -#if !defined(SWIFT_ENUM) -# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# if __has_feature(generalized_swift_name) -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# else -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) -# endif -#endif -#if !defined(SWIFT_UNAVAILABLE) -# define SWIFT_UNAVAILABLE __attribute__((unavailable)) -#endif -#if !defined(SWIFT_UNAVAILABLE_MSG) -# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) -#endif -#if !defined(SWIFT_AVAILABILITY) -# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) -#endif -#if !defined(SWIFT_WEAK_IMPORT) -# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) -#endif -#if !defined(SWIFT_DEPRECATED) -# define SWIFT_DEPRECATED __attribute__((deprecated)) -#endif -#if !defined(SWIFT_DEPRECATED_MSG) -# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) -#endif -#if !defined(SWIFT_DEPRECATED_OBJC) -# if __has_feature(attribute_diagnose_if_objc) -# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) -# else -# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) -# endif -#endif -#if defined(__OBJC__) -#if !defined(IBSegueAction) -# define IBSegueAction -#endif -#endif -#if !defined(SWIFT_EXTERN) -# if defined(__cplusplus) -# define SWIFT_EXTERN extern "C" -# else -# define SWIFT_EXTERN extern -# endif -#endif -#if !defined(SWIFT_CALL) -# define SWIFT_CALL __attribute__((swiftcall)) -#endif -#if !defined(SWIFT_INDIRECT_RESULT) -# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) -#endif -#if !defined(SWIFT_CONTEXT) -# define SWIFT_CONTEXT __attribute__((swift_context)) -#endif -#if !defined(SWIFT_ERROR_RESULT) -# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) -#endif -#if defined(__cplusplus) -# define SWIFT_NOEXCEPT noexcept -#else -# define SWIFT_NOEXCEPT -#endif -#if !defined(SWIFT_C_INLINE_THUNK) -# if __has_attribute(always_inline) -# if __has_attribute(nodebug) -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) -# else -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) -# endif -# else -# define SWIFT_C_INLINE_THUNK inline -# endif -#endif -#if defined(_WIN32) -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) -#endif -#else -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL -#endif -#endif -#if defined(__OBJC__) -#if __has_feature(objc_modules) -#if __has_warning("-Watimport-in-framework-header") -#pragma clang diagnostic ignored "-Watimport-in-framework-header" -#endif -#endif - -#endif -#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" -#pragma clang diagnostic ignored "-Wduplicate-method-arg" -#if __has_warning("-Wpragma-clang-attribute") -# pragma clang diagnostic ignored "-Wpragma-clang-attribute" -#endif -#pragma clang diagnostic ignored "-Wunknown-pragmas" -#pragma clang diagnostic ignored "-Wnullability" -#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" - -#if __has_attribute(external_source_symbol) -# pragma push_macro("any") -# undef any -# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="DouShouQiModel",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) -# pragma pop_macro("any") -#endif - -#if defined(__OBJC__) -#endif -#if __has_attribute(external_source_symbol) -# pragma clang attribute pop -#endif -#if defined(__cplusplus) -#endif -#pragma clang diagnostic pop -#endif - -#else -#error unsupported Swift architecture -#endif diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel.h b/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel.h deleted file mode 100644 index 5bbf06a..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel.h +++ /dev/null @@ -1,18 +0,0 @@ -// -// DouShouQiModel.h -// DouShouQiModel -// -// Created by Marc ChevaldonnΓ© on 14/05/2024. -// - -#import - -//! Project version number for DouShouQiModel. -FOUNDATION_EXPORT double DouShouQiModelVersionNumber; - -//! Project version string for DouShouQiModel. -FOUNDATION_EXPORT const unsigned char DouShouQiModelVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Info.plist b/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Info.plist deleted file mode 100644 index e83fb5fe8f9556626c1424e0cafa75505ea9c486..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 763 zcmY*W%Wl&^6rC9gv_KoTp^%0a+VZAg*`_Hggw!~ZqBLz9J54}Q+=)F&Mjb!!qYwcL zw(R%-7G=$bAK(YrAy~8F2lxXfiLI2`+4PYifCTt z#uwA|#mK}WjY9E%PTLYCy;y0KHCdESt~Y75?+!P*FB`(T>DnUpJVr#Gjb;#tj2+ve z$*|KCWkaefaz3XtsW)`Ffi6E0l~#g=K$mlh)R1%eoFsL0nZNe={sRFD=;UD?`}Wo* zm!HfZosE-2Oh#B7{Pb&1N;QP!0+$}{009YfTqw4nnfv; kL0R++70@oy&>OiFz~~@2j^I%o DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO11notFinishedyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO11notFinishedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "even", - "printedName": "even", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO4evenyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO4evenyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "winner", - "printedName": "winner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> (DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "mangledName": "$s14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6ResultO", - "mangledName": "$s14DouShouQiModel6ResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "WinningReason", - "printedName": "WinningReason", - "children": [ - { - "kind": "Var", - "name": "denReached", - "printedName": "denReached", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMorePieces", - "printedName": "noMorePieces", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tooManyOccurences", - "printedName": "tooManyOccurences", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMovesLeft", - "printedName": "noMovesLeft", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel13WinningReasonO", - "mangledName": "$s14DouShouQiModel13WinningReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "BoardResult", - "printedName": "BoardResult", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "ok", - "printedName": "ok", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO2okyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO2okyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "failed", - "printedName": "failed", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(reason: DouShouQiModel.BoardFailingReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel11BoardResultO", - "mangledName": "$s14DouShouQiModel11BoardResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "BoardFailingReason", - "printedName": "BoardFailingReason", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "outOfBounds", - "printedName": "outOfBounds", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellNotEmpty", - "printedName": "cellNotEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellEmpty", - "printedName": "cellEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel18BoardFailingReasonO", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "HumanPlayer", - "printedName": "HumanPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:andInputMethod:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "changeInput", - "printedName": "changeInput(input:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel11HumanPlayerC", - "mangledName": "$s14DouShouQiModel11HumanPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "ClassicRules", - "printedName": "ClassicRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesVACycfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel12ClassicRulesV", - "mangledName": "$s14DouShouQiModel12ClassicRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Cell", - "printedName": "Cell", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "cellType", - "printedName": "cellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "initialOwner", - "printedName": "initialOwner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "piece", - "printedName": "piece", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - }, - { - "kind": "Accessor", - "name": "Set", - "printedName": "Set()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "set" - }, - { - "kind": "Accessor", - "name": "Modify", - "printedName": "Modify()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "_modify" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(ofType:ownedBy:withPiece:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "hasDefaultArg": true, - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "hasDefaultArg": true, - "usr": "s:Sq" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "mangledName": "$s14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4CellV", - "mangledName": "$s14DouShouQiModel4CellV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "VerySimpleRules", - "printedName": "VerySimpleRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesVACycfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel15VerySimpleRulesV", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Rules", - "printedName": "Rules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "mangledName": "$s14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "mangledName": "$s14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "mangledName": "$s14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "mangledName": "$s14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "declAttributes": [ - "Mutating" - ], - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Protocol", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Player", - "printedName": "Player", - "children": [ - { - "kind": "Var", - "name": "name", - "printedName": "name", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvp", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvg", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "id", - "printedName": "id", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC10chooseMove2in4withAA0G0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel6PlayerC10chooseMove2in4withAA0G0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel6PlayerC", - "mangledName": "$s14DouShouQiModel6PlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "GameError", - "printedName": "GameError", - "children": [ - { - "kind": "Var", - "name": "invalidMove", - "printedName": "invalidMove", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "nextPlayerError", - "printedName": "nextPlayerError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badPlayerId", - "printedName": "badPlayerId", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> (Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(message: Swift.String)", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidRules", - "printedName": "invalidRules", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidPlayer", - "printedName": "invalidPlayer", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidGame", - "printedName": "invalidGame", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidBoard", - "printedName": "invalidBoard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "moduleName": "DouShouQiModel" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel9GameErrorO", - "mangledName": "$s14DouShouQiModel9GameErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "RandomPlayer", - "printedName": "RandomPlayer", - "children": [ - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12RandomPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel12RandomPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.RandomPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "RandomPlayer", - "printedName": "DouShouQiModel.RandomPlayer", - "usr": "s:14DouShouQiModel12RandomPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel12RandomPlayerC", - "mangledName": "$s14DouShouQiModel12RandomPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "CellType", - "printedName": "CellType", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "jungle", - "printedName": "jungle", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO6jungleyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO6jungleyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "water", - "printedName": "water", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO5wateryA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO5wateryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "trap", - "printedName": "trap", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO4trapyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO4trapyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "den", - "printedName": "den", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO3denyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO3denyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "allCases", - "printedName": "allCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivp", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivg", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel8CellTypeO", - "mangledName": "$s14DouShouQiModel8CellTypeO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "CaseIterable", - "printedName": "CaseIterable", - "children": [ - { - "kind": "TypeWitness", - "name": "AllCases", - "printedName": "AllCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ] - } - ], - "usr": "s:s12CaseIterableP", - "mangledName": "$ss12CaseIterableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Board", - "printedName": "Board", - "children": [ - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "nbRows", - "printedName": "nbRows", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivp", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivg", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "nbColumns", - "printedName": "nbColumns", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivp", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivg", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "grid", - "printedName": "grid", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withGrid:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Board?", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "mangledName": "$s14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces(of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "mangledName": "$s14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces()", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "mangledName": "$s14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "insert", - "printedName": "insert(piece:atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "mangledName": "$s14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "removePiece", - "printedName": "removePiece(atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "mangledName": "$s14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5BoardV", - "mangledName": "$s14DouShouQiModel5BoardV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Piece", - "printedName": "Piece", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "animal", - "printedName": "animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withOwner:andAnimal:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "mangledName": "$s14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5PieceV", - "mangledName": "$s14DouShouQiModel5PieceV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "InvalidBoardError", - "printedName": "InvalidBoardError", - "children": [ - { - "kind": "Var", - "name": "unknownError", - "printedName": "unknownError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badDimensions", - "printedName": "badDimensions", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbRows: Swift.Int, nbColumns: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badCellType", - "printedName": "badCellType", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "multipleOccurenceOfSamePiece", - "printedName": "multipleOccurenceOfSamePiece", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceWithNoOwner", - "printedName": "pieceWithNoOwner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceNotAllowedOnThisCell", - "printedName": "pieceNotAllowedOnThisCell", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Owner", - "printedName": "Owner", - "children": [ - { - "kind": "Var", - "name": "noOne", - "printedName": "noOne", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO5noOneyA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO5noOneyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player1", - "printedName": "player1", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player1yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player1yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player2", - "printedName": "player2", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player2yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player2yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "simpleDescription", - "printedName": "simpleDescription", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivp", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivg", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel5OwnerO", - "mangledName": "$s14DouShouQiModel5OwnerO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Move", - "printedName": "Move", - "children": [ - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowOrigin", - "printedName": "rowOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnOrigin", - "printedName": "columnOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowDestination", - "printedName": "rowDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnDestination", - "printedName": "columnDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(of:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "mangledName": "$s14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4MoveV", - "mangledName": "$s14DouShouQiModel4MoveV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Animal", - "printedName": "Animal", - "children": [ - { - "kind": "Var", - "name": "rat", - "printedName": "rat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3ratyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3ratyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cat", - "printedName": "cat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3catyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3catyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "dog", - "printedName": "dog", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3dogyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3dogyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "wolf", - "printedName": "wolf", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4wolfyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4wolfyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "leopard", - "printedName": "leopard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO7leopardyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO7leopardyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tiger", - "printedName": "tiger", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO5tigeryA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO5tigeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "lion", - "printedName": "lion", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4lionyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4lionyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "elephant", - "printedName": "elephant", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO8elephantyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO8elephantyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "rawValue", - "printedName": "rawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivp", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivg", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(rawValue:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Animal?", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "moduleName": "DouShouQiModel", - "implicit": true, - "init_kind": "Designated" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6AnimalO", - "mangledName": "$s14DouShouQiModel6AnimalO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "enumRawTypeName": "Int", - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "RawRepresentable", - "printedName": "RawRepresentable", - "children": [ - { - "kind": "TypeWitness", - "name": "RawValue", - "printedName": "RawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "usr": "s:SY", - "mangledName": "$sSY" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Game", - "printedName": "Game", - "children": [ - { - "kind": "Var", - "name": "board", - "printedName": "board", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV5boardAA5BoardVvp", - "mangledName": "$s14DouShouQiModel4GameV5boardAA5BoardVvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV5boardAA5BoardVvg", - "mangledName": "$s14DouShouQiModel4GameV5boardAA5BoardVvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rules", - "printedName": "rules", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV5rulesAA5Rules_pvp", - "mangledName": "$s14DouShouQiModel4GameV5rulesAA5Rules_pvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV5rulesAA5Rules_pvg", - "mangledName": "$s14DouShouQiModel4GameV5rulesAA5Rules_pvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "players", - "printedName": "players", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvp", - "mangledName": "$s14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvg", - "mangledName": "$s14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameV9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "mangledName": "$s14DouShouQiModel4GameV9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withBoard:andRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameV9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "mangledName": "$s14DouShouQiModel4GameV9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "addGameStartedListener", - "printedName": "addGameStartedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE15StartedListeneryyyAA5BoardVcF", - "mangledName": "$s14DouShouQiModel4GameV03addE15StartedListeneryyyAA5BoardVcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addPlayerNotifiedListener", - "printedName": "addPlayerNotifiedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtcF", - "mangledName": "$s14DouShouQiModel4GameV25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addGameChangedListener", - "printedName": "addGameChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Game) async -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE15ChangedListeneryyyACYacF", - "mangledName": "$s14DouShouQiModel4GameV03addE15ChangedListeneryyyACYacF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addGameOverListener", - "printedName": "addGameOverListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "mangledName": "$s14DouShouQiModel4GameV03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addMoveChosenCallbacksListener", - "printedName": "addMoveChosenCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "mangledName": "$s14DouShouQiModel4GameV30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addInvalidMoveCallbacksListener", - "printedName": "addInvalidMoveCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "mangledName": "$s14DouShouQiModel4GameV31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addBoardChangedListener", - "printedName": "addBoardChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV23addBoardChangedListeneryyyAA0G0VcF", - "mangledName": "$s14DouShouQiModel4GameV23addBoardChangedListeneryyyAA0G0VcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "start", - "printedName": "start()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV5startyyYaKF", - "mangledName": "$s14DouShouQiModel4GameV5startyyYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4GameV", - "mangledName": "$s14DouShouQiModel4GameV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ] - } - ], - "json_format_version": 8 - }, - "ConstValues": [ - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 81, - "length": 2, - "value": "10" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 112, - "length": 1, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 149, - "length": 1, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3231, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3271, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4124, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 4468, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4658, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4700, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4748, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 5150, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 6352, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6372, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6412, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 9868, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10769, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11089, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11196, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 11353, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11371, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11463, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11508, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11616, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11660, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11752, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11815, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11923, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 12449, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12490, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12502, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12509, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12886, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12897, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12904, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13269, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13647, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15780, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15887, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15911, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16028, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16052, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16232, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16332, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16762, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16767, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 17131, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 17187, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 81, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 147, - "length": 4, - "value": "\"ΓΈ\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 152, - "length": 2, - "value": "\" on \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 167, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 202, - "length": 1, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 89, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 119, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2067, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2107, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2267, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2277, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2419, - "length": 1, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2429, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2964, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3004, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 3773, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3793, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3833, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4182, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4292, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4531, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4639, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4773, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4782, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4800, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4809, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4925, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 5013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 6962, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7077, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7105, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7230, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7258, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7350, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Dictionary", - "offset": 8072, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 8128, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "BooleanLiteral", - "offset": 475, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 570, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 694, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 981, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1015, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1049, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1212, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1278, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1548, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1965, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 40, - "value": "\"[\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 150, - "length": 1, - "value": "\":\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 160, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 183, - "length": 3, - "value": "\"x\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 229, - "length": 3, - "value": "\"1\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 275, - "length": 3, - "value": "\"2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 616, - "length": 87, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 625, - "length": 1, - "value": "\": [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 640, - "length": 1, - "value": "\",\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 656, - "length": 1, - "value": "\"] -> [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 679, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 701, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 514, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 982, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1253, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1585, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1966, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2405, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2818, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3238, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3681, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 4097, - "length": 5, - "value": "false" - } - ] -} \ No newline at end of file diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.private.swiftinterface b/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.private.swiftinterface deleted file mode 100644 index 7e38b92..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.private.swiftinterface +++ /dev/null @@ -1,237 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target arm64-apple-ios16.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.Player { - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public struct Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public mutating func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public mutating func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public mutating func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public mutating func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public mutating func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public mutating func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func start() async throws - #endif -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.swiftdoc b/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.swiftdoc deleted file mode 100644 index b732cc2c96b3aa10d5b34c5fce2e9e0b2808e214..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 684 zcmaDfX9YVW2Lpp90|Ns)qlJ#c+7Dby0=U-%aP4>CT5rI$Ux91Q2d>2%xY!*xUFbQa zy@N^j#3Ahshx9v`wD%m+SaZl(Xp58P1t*OOP8vYc#=uE?50mBGjnH89XK)H48yX)=@m&2h;u4bI3f4b1e-Pf5*TV3-FKODxJYGto^1*`S-5 zUub$g#vN0m7xi$sisc(iA5=4 zW_d|L`Q^pInPmksKy`Vgxk;%-3i)XYMLOE@-8b7D*~~;zP%nb9;g&yb}~c)yHh~kLv;#P Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.Player { - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public struct Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public mutating func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public mutating func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public mutating func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public mutating func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public mutating func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public mutating func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func start() async throws - #endif -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/module.modulemap b/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/module.modulemap deleted file mode 100644 index e7aa10a..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/module.modulemap +++ /dev/null @@ -1,11 +0,0 @@ -framework module DouShouQiModel { - umbrella header "DouShouQiModel.h" - export * - - module * { export * } -} - -module DouShouQiModel.Swift { - header "DouShouQiModel-Swift.h" - requires objc -} diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/DouShouQiModel b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/DouShouQiModel deleted file mode 100755 index a3c1f96030560f3d9fc7b203d3492fe533f2954e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 336720 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 N6`%@G1^&Vc{0GS6g@phB diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h deleted file mode 100644 index 5e14e79..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h +++ /dev/null @@ -1,618 +0,0 @@ -#if 0 -#elif defined(__arm64__) && __arm64__ -// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -#ifndef DOUSHOUQIMODEL_SWIFT_H -#define DOUSHOUQIMODEL_SWIFT_H -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgcc-compat" - -#if !defined(__has_include) -# define __has_include(x) 0 -#endif -#if !defined(__has_attribute) -# define __has_attribute(x) 0 -#endif -#if !defined(__has_feature) -# define __has_feature(x) 0 -#endif -#if !defined(__has_warning) -# define __has_warning(x) 0 -#endif - -#if __has_include() -# include -#endif - -#pragma clang diagnostic ignored "-Wauto-import" -#if defined(__OBJC__) -#include -#endif -#if defined(__cplusplus) -#include -#include -#include -#include -#include -#include -#include -#else -#include -#include -#include -#include -#endif -#if defined(__cplusplus) -#if defined(__arm64e__) && __has_include() -# include -#else -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreserved-macro-identifier" -# ifndef __ptrauth_swift_value_witness_function_pointer -# define __ptrauth_swift_value_witness_function_pointer(x) -# endif -# ifndef __ptrauth_swift_class_method_pointer -# define __ptrauth_swift_class_method_pointer(x) -# endif -#pragma clang diagnostic pop -#endif -#endif - -#if !defined(SWIFT_TYPEDEFS) -# define SWIFT_TYPEDEFS 1 -# if __has_include() -# include -# elif !defined(__cplusplus) -typedef uint_least16_t char16_t; -typedef uint_least32_t char32_t; -# endif -typedef float swift_float2 __attribute__((__ext_vector_type__(2))); -typedef float swift_float3 __attribute__((__ext_vector_type__(3))); -typedef float swift_float4 __attribute__((__ext_vector_type__(4))); -typedef double swift_double2 __attribute__((__ext_vector_type__(2))); -typedef double swift_double3 __attribute__((__ext_vector_type__(3))); -typedef double swift_double4 __attribute__((__ext_vector_type__(4))); -typedef int swift_int2 __attribute__((__ext_vector_type__(2))); -typedef int swift_int3 __attribute__((__ext_vector_type__(3))); -typedef int swift_int4 __attribute__((__ext_vector_type__(4))); -typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); -typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); -typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); -#endif - -#if !defined(SWIFT_PASTE) -# define SWIFT_PASTE_HELPER(x, y) x##y -# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) -#endif -#if !defined(SWIFT_METATYPE) -# define SWIFT_METATYPE(X) Class -#endif -#if !defined(SWIFT_CLASS_PROPERTY) -# if __has_feature(objc_class_property) -# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ -# else -# define SWIFT_CLASS_PROPERTY(...) -# endif -#endif -#if !defined(SWIFT_RUNTIME_NAME) -# if __has_attribute(objc_runtime_name) -# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) -# else -# define SWIFT_RUNTIME_NAME(X) -# endif -#endif -#if !defined(SWIFT_COMPILE_NAME) -# if __has_attribute(swift_name) -# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) -# else -# define SWIFT_COMPILE_NAME(X) -# endif -#endif -#if !defined(SWIFT_METHOD_FAMILY) -# if __has_attribute(objc_method_family) -# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) -# else -# define SWIFT_METHOD_FAMILY(X) -# endif -#endif -#if !defined(SWIFT_NOESCAPE) -# if __has_attribute(noescape) -# define SWIFT_NOESCAPE __attribute__((noescape)) -# else -# define SWIFT_NOESCAPE -# endif -#endif -#if !defined(SWIFT_RELEASES_ARGUMENT) -# if __has_attribute(ns_consumed) -# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) -# else -# define SWIFT_RELEASES_ARGUMENT -# endif -#endif -#if !defined(SWIFT_WARN_UNUSED_RESULT) -# if __has_attribute(warn_unused_result) -# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define SWIFT_WARN_UNUSED_RESULT -# endif -#endif -#if !defined(SWIFT_NORETURN) -# if __has_attribute(noreturn) -# define SWIFT_NORETURN __attribute__((noreturn)) -# else -# define SWIFT_NORETURN -# endif -#endif -#if !defined(SWIFT_CLASS_EXTRA) -# define SWIFT_CLASS_EXTRA -#endif -#if !defined(SWIFT_PROTOCOL_EXTRA) -# define SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_ENUM_EXTRA) -# define SWIFT_ENUM_EXTRA -#endif -#if !defined(SWIFT_CLASS) -# if __has_attribute(objc_subclassing_restricted) -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# else -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# endif -#endif -#if !defined(SWIFT_RESILIENT_CLASS) -# if __has_attribute(objc_class_stub) -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) -# else -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) -# endif -#endif -#if !defined(SWIFT_PROTOCOL) -# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_EXTENSION) -# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) -#endif -#if !defined(OBJC_DESIGNATED_INITIALIZER) -# if __has_attribute(objc_designated_initializer) -# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) -# else -# define OBJC_DESIGNATED_INITIALIZER -# endif -#endif -#if !defined(SWIFT_ENUM_ATTR) -# if __has_attribute(enum_extensibility) -# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) -# else -# define SWIFT_ENUM_ATTR(_extensibility) -# endif -#endif -#if !defined(SWIFT_ENUM) -# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# if __has_feature(generalized_swift_name) -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# else -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) -# endif -#endif -#if !defined(SWIFT_UNAVAILABLE) -# define SWIFT_UNAVAILABLE __attribute__((unavailable)) -#endif -#if !defined(SWIFT_UNAVAILABLE_MSG) -# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) -#endif -#if !defined(SWIFT_AVAILABILITY) -# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) -#endif -#if !defined(SWIFT_WEAK_IMPORT) -# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) -#endif -#if !defined(SWIFT_DEPRECATED) -# define SWIFT_DEPRECATED __attribute__((deprecated)) -#endif -#if !defined(SWIFT_DEPRECATED_MSG) -# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) -#endif -#if !defined(SWIFT_DEPRECATED_OBJC) -# if __has_feature(attribute_diagnose_if_objc) -# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) -# else -# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) -# endif -#endif -#if defined(__OBJC__) -#if !defined(IBSegueAction) -# define IBSegueAction -#endif -#endif -#if !defined(SWIFT_EXTERN) -# if defined(__cplusplus) -# define SWIFT_EXTERN extern "C" -# else -# define SWIFT_EXTERN extern -# endif -#endif -#if !defined(SWIFT_CALL) -# define SWIFT_CALL __attribute__((swiftcall)) -#endif -#if !defined(SWIFT_INDIRECT_RESULT) -# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) -#endif -#if !defined(SWIFT_CONTEXT) -# define SWIFT_CONTEXT __attribute__((swift_context)) -#endif -#if !defined(SWIFT_ERROR_RESULT) -# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) -#endif -#if defined(__cplusplus) -# define SWIFT_NOEXCEPT noexcept -#else -# define SWIFT_NOEXCEPT -#endif -#if !defined(SWIFT_C_INLINE_THUNK) -# if __has_attribute(always_inline) -# if __has_attribute(nodebug) -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) -# else -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) -# endif -# else -# define SWIFT_C_INLINE_THUNK inline -# endif -#endif -#if defined(_WIN32) -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) -#endif -#else -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL -#endif -#endif -#if defined(__OBJC__) -#if __has_feature(objc_modules) -#if __has_warning("-Watimport-in-framework-header") -#pragma clang diagnostic ignored "-Watimport-in-framework-header" -#endif -#endif - -#endif -#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" -#pragma clang diagnostic ignored "-Wduplicate-method-arg" -#if __has_warning("-Wpragma-clang-attribute") -# pragma clang diagnostic ignored "-Wpragma-clang-attribute" -#endif -#pragma clang diagnostic ignored "-Wunknown-pragmas" -#pragma clang diagnostic ignored "-Wnullability" -#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" - -#if __has_attribute(external_source_symbol) -# pragma push_macro("any") -# undef any -# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="DouShouQiModel",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) -# pragma pop_macro("any") -#endif - -#if defined(__OBJC__) -#endif -#if __has_attribute(external_source_symbol) -# pragma clang attribute pop -#endif -#if defined(__cplusplus) -#endif -#pragma clang diagnostic pop -#endif - -#elif defined(__x86_64__) && __x86_64__ -// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -#ifndef DOUSHOUQIMODEL_SWIFT_H -#define DOUSHOUQIMODEL_SWIFT_H -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgcc-compat" - -#if !defined(__has_include) -# define __has_include(x) 0 -#endif -#if !defined(__has_attribute) -# define __has_attribute(x) 0 -#endif -#if !defined(__has_feature) -# define __has_feature(x) 0 -#endif -#if !defined(__has_warning) -# define __has_warning(x) 0 -#endif - -#if __has_include() -# include -#endif - -#pragma clang diagnostic ignored "-Wauto-import" -#if defined(__OBJC__) -#include -#endif -#if defined(__cplusplus) -#include -#include -#include -#include -#include -#include -#include -#else -#include -#include -#include -#include -#endif -#if defined(__cplusplus) -#if defined(__arm64e__) && __has_include() -# include -#else -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreserved-macro-identifier" -# ifndef __ptrauth_swift_value_witness_function_pointer -# define __ptrauth_swift_value_witness_function_pointer(x) -# endif -# ifndef __ptrauth_swift_class_method_pointer -# define __ptrauth_swift_class_method_pointer(x) -# endif -#pragma clang diagnostic pop -#endif -#endif - -#if !defined(SWIFT_TYPEDEFS) -# define SWIFT_TYPEDEFS 1 -# if __has_include() -# include -# elif !defined(__cplusplus) -typedef uint_least16_t char16_t; -typedef uint_least32_t char32_t; -# endif -typedef float swift_float2 __attribute__((__ext_vector_type__(2))); -typedef float swift_float3 __attribute__((__ext_vector_type__(3))); -typedef float swift_float4 __attribute__((__ext_vector_type__(4))); -typedef double swift_double2 __attribute__((__ext_vector_type__(2))); -typedef double swift_double3 __attribute__((__ext_vector_type__(3))); -typedef double swift_double4 __attribute__((__ext_vector_type__(4))); -typedef int swift_int2 __attribute__((__ext_vector_type__(2))); -typedef int swift_int3 __attribute__((__ext_vector_type__(3))); -typedef int swift_int4 __attribute__((__ext_vector_type__(4))); -typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); -typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); -typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); -#endif - -#if !defined(SWIFT_PASTE) -# define SWIFT_PASTE_HELPER(x, y) x##y -# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) -#endif -#if !defined(SWIFT_METATYPE) -# define SWIFT_METATYPE(X) Class -#endif -#if !defined(SWIFT_CLASS_PROPERTY) -# if __has_feature(objc_class_property) -# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ -# else -# define SWIFT_CLASS_PROPERTY(...) -# endif -#endif -#if !defined(SWIFT_RUNTIME_NAME) -# if __has_attribute(objc_runtime_name) -# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) -# else -# define SWIFT_RUNTIME_NAME(X) -# endif -#endif -#if !defined(SWIFT_COMPILE_NAME) -# if __has_attribute(swift_name) -# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) -# else -# define SWIFT_COMPILE_NAME(X) -# endif -#endif -#if !defined(SWIFT_METHOD_FAMILY) -# if __has_attribute(objc_method_family) -# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) -# else -# define SWIFT_METHOD_FAMILY(X) -# endif -#endif -#if !defined(SWIFT_NOESCAPE) -# if __has_attribute(noescape) -# define SWIFT_NOESCAPE __attribute__((noescape)) -# else -# define SWIFT_NOESCAPE -# endif -#endif -#if !defined(SWIFT_RELEASES_ARGUMENT) -# if __has_attribute(ns_consumed) -# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) -# else -# define SWIFT_RELEASES_ARGUMENT -# endif -#endif -#if !defined(SWIFT_WARN_UNUSED_RESULT) -# if __has_attribute(warn_unused_result) -# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define SWIFT_WARN_UNUSED_RESULT -# endif -#endif -#if !defined(SWIFT_NORETURN) -# if __has_attribute(noreturn) -# define SWIFT_NORETURN __attribute__((noreturn)) -# else -# define SWIFT_NORETURN -# endif -#endif -#if !defined(SWIFT_CLASS_EXTRA) -# define SWIFT_CLASS_EXTRA -#endif -#if !defined(SWIFT_PROTOCOL_EXTRA) -# define SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_ENUM_EXTRA) -# define SWIFT_ENUM_EXTRA -#endif -#if !defined(SWIFT_CLASS) -# if __has_attribute(objc_subclassing_restricted) -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# else -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# endif -#endif -#if !defined(SWIFT_RESILIENT_CLASS) -# if __has_attribute(objc_class_stub) -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) -# else -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) -# endif -#endif -#if !defined(SWIFT_PROTOCOL) -# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_EXTENSION) -# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) -#endif -#if !defined(OBJC_DESIGNATED_INITIALIZER) -# if __has_attribute(objc_designated_initializer) -# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) -# else -# define OBJC_DESIGNATED_INITIALIZER -# endif -#endif -#if !defined(SWIFT_ENUM_ATTR) -# if __has_attribute(enum_extensibility) -# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) -# else -# define SWIFT_ENUM_ATTR(_extensibility) -# endif -#endif -#if !defined(SWIFT_ENUM) -# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# if __has_feature(generalized_swift_name) -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# else -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) -# endif -#endif -#if !defined(SWIFT_UNAVAILABLE) -# define SWIFT_UNAVAILABLE __attribute__((unavailable)) -#endif -#if !defined(SWIFT_UNAVAILABLE_MSG) -# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) -#endif -#if !defined(SWIFT_AVAILABILITY) -# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) -#endif -#if !defined(SWIFT_WEAK_IMPORT) -# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) -#endif -#if !defined(SWIFT_DEPRECATED) -# define SWIFT_DEPRECATED __attribute__((deprecated)) -#endif -#if !defined(SWIFT_DEPRECATED_MSG) -# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) -#endif -#if !defined(SWIFT_DEPRECATED_OBJC) -# if __has_feature(attribute_diagnose_if_objc) -# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) -# else -# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) -# endif -#endif -#if defined(__OBJC__) -#if !defined(IBSegueAction) -# define IBSegueAction -#endif -#endif -#if !defined(SWIFT_EXTERN) -# if defined(__cplusplus) -# define SWIFT_EXTERN extern "C" -# else -# define SWIFT_EXTERN extern -# endif -#endif -#if !defined(SWIFT_CALL) -# define SWIFT_CALL __attribute__((swiftcall)) -#endif -#if !defined(SWIFT_INDIRECT_RESULT) -# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) -#endif -#if !defined(SWIFT_CONTEXT) -# define SWIFT_CONTEXT __attribute__((swift_context)) -#endif -#if !defined(SWIFT_ERROR_RESULT) -# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) -#endif -#if defined(__cplusplus) -# define SWIFT_NOEXCEPT noexcept -#else -# define SWIFT_NOEXCEPT -#endif -#if !defined(SWIFT_C_INLINE_THUNK) -# if __has_attribute(always_inline) -# if __has_attribute(nodebug) -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) -# else -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) -# endif -# else -# define SWIFT_C_INLINE_THUNK inline -# endif -#endif -#if defined(_WIN32) -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) -#endif -#else -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL -#endif -#endif -#if defined(__OBJC__) -#if __has_feature(objc_modules) -#if __has_warning("-Watimport-in-framework-header") -#pragma clang diagnostic ignored "-Watimport-in-framework-header" -#endif -#endif - -#endif -#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" -#pragma clang diagnostic ignored "-Wduplicate-method-arg" -#if __has_warning("-Wpragma-clang-attribute") -# pragma clang diagnostic ignored "-Wpragma-clang-attribute" -#endif -#pragma clang diagnostic ignored "-Wunknown-pragmas" -#pragma clang diagnostic ignored "-Wnullability" -#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" - -#if __has_attribute(external_source_symbol) -# pragma push_macro("any") -# undef any -# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="DouShouQiModel",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) -# pragma pop_macro("any") -#endif - -#if defined(__OBJC__) -#endif -#if __has_attribute(external_source_symbol) -# pragma clang attribute pop -#endif -#if defined(__cplusplus) -#endif -#pragma clang diagnostic pop -#endif - -#else -#error unsupported Swift architecture -#endif diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel.h b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel.h deleted file mode 100644 index 5bbf06a..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel.h +++ /dev/null @@ -1,18 +0,0 @@ -// -// DouShouQiModel.h -// DouShouQiModel -// -// Created by Marc ChevaldonnΓ© on 14/05/2024. -// - -#import - -//! Project version number for DouShouQiModel. -FOUNDATION_EXPORT double DouShouQiModelVersionNumber; - -//! Project version string for DouShouQiModel. -FOUNDATION_EXPORT const unsigned char DouShouQiModelVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Info.plist b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Info.plist deleted file mode 100644 index 33fe5476a1d97be812dbdb900c14367a31ba094d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 743 zcmZ8d%Wl&^6rDS~3KZfth0;PxDUVVlMz%{}!2+pqBZVq7t=$HyD%QlABqPQi<3~l{ z2iWletYFCoA+cn~AMgWRuwjAV7nr2BQt;;9dmiI^ZYvZ#PIUc1n*x07_=%IJ#!jC( zJAUqbL7SK?PF=V-eQ9QT_VShas|(i_7p~v9d27klimNFX?HcuZJYXC4aB{Voa%D9Q z+JaeZp9vZIEJ(Ikm&?G_CUb7>CG*mRwgfu@R@+L-JDf$XHkT`_K}TBLOO&5R{T&v? zs@u!iC)8Ij6!Wo8z2~&coPMa#*&MZdGDhhh4q#h+aO~}8TeV^z~rPf%t z4WhrFQz3Z0Cj(}yKdIO<+B95k(UU%*VJH|;-7sxTgxL3qCuq DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO11notFinishedyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO11notFinishedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "even", - "printedName": "even", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO4evenyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO4evenyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "winner", - "printedName": "winner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> (DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "mangledName": "$s14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6ResultO", - "mangledName": "$s14DouShouQiModel6ResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "WinningReason", - "printedName": "WinningReason", - "children": [ - { - "kind": "Var", - "name": "denReached", - "printedName": "denReached", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMorePieces", - "printedName": "noMorePieces", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tooManyOccurences", - "printedName": "tooManyOccurences", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMovesLeft", - "printedName": "noMovesLeft", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel13WinningReasonO", - "mangledName": "$s14DouShouQiModel13WinningReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "BoardResult", - "printedName": "BoardResult", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "ok", - "printedName": "ok", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO2okyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO2okyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "failed", - "printedName": "failed", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(reason: DouShouQiModel.BoardFailingReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel11BoardResultO", - "mangledName": "$s14DouShouQiModel11BoardResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "BoardFailingReason", - "printedName": "BoardFailingReason", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "outOfBounds", - "printedName": "outOfBounds", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellNotEmpty", - "printedName": "cellNotEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellEmpty", - "printedName": "cellEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel18BoardFailingReasonO", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "HumanPlayer", - "printedName": "HumanPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:andInputMethod:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "changeInput", - "printedName": "changeInput(input:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel11HumanPlayerC", - "mangledName": "$s14DouShouQiModel11HumanPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "ClassicRules", - "printedName": "ClassicRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesVACycfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel12ClassicRulesV", - "mangledName": "$s14DouShouQiModel12ClassicRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Cell", - "printedName": "Cell", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "cellType", - "printedName": "cellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "initialOwner", - "printedName": "initialOwner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "piece", - "printedName": "piece", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - }, - { - "kind": "Accessor", - "name": "Set", - "printedName": "Set()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "set" - }, - { - "kind": "Accessor", - "name": "Modify", - "printedName": "Modify()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "_modify" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(ofType:ownedBy:withPiece:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "hasDefaultArg": true, - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "hasDefaultArg": true, - "usr": "s:Sq" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "mangledName": "$s14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4CellV", - "mangledName": "$s14DouShouQiModel4CellV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "VerySimpleRules", - "printedName": "VerySimpleRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesVACycfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel15VerySimpleRulesV", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Rules", - "printedName": "Rules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "mangledName": "$s14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "mangledName": "$s14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "mangledName": "$s14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "mangledName": "$s14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "declAttributes": [ - "Mutating" - ], - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Protocol", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Player", - "printedName": "Player", - "children": [ - { - "kind": "Var", - "name": "name", - "printedName": "name", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvp", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvg", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "id", - "printedName": "id", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC10chooseMove2in4withAA0G0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel6PlayerC10chooseMove2in4withAA0G0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel6PlayerC", - "mangledName": "$s14DouShouQiModel6PlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "GameError", - "printedName": "GameError", - "children": [ - { - "kind": "Var", - "name": "invalidMove", - "printedName": "invalidMove", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "nextPlayerError", - "printedName": "nextPlayerError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badPlayerId", - "printedName": "badPlayerId", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> (Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(message: Swift.String)", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidRules", - "printedName": "invalidRules", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidPlayer", - "printedName": "invalidPlayer", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidGame", - "printedName": "invalidGame", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidBoard", - "printedName": "invalidBoard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "moduleName": "DouShouQiModel" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel9GameErrorO", - "mangledName": "$s14DouShouQiModel9GameErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "RandomPlayer", - "printedName": "RandomPlayer", - "children": [ - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12RandomPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel12RandomPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.RandomPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "RandomPlayer", - "printedName": "DouShouQiModel.RandomPlayer", - "usr": "s:14DouShouQiModel12RandomPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel12RandomPlayerC", - "mangledName": "$s14DouShouQiModel12RandomPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "CellType", - "printedName": "CellType", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "jungle", - "printedName": "jungle", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO6jungleyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO6jungleyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "water", - "printedName": "water", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO5wateryA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO5wateryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "trap", - "printedName": "trap", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO4trapyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO4trapyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "den", - "printedName": "den", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO3denyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO3denyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "allCases", - "printedName": "allCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivp", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivg", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel8CellTypeO", - "mangledName": "$s14DouShouQiModel8CellTypeO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "CaseIterable", - "printedName": "CaseIterable", - "children": [ - { - "kind": "TypeWitness", - "name": "AllCases", - "printedName": "AllCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ] - } - ], - "usr": "s:s12CaseIterableP", - "mangledName": "$ss12CaseIterableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Board", - "printedName": "Board", - "children": [ - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "nbRows", - "printedName": "nbRows", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivp", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivg", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "nbColumns", - "printedName": "nbColumns", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivp", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivg", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "grid", - "printedName": "grid", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withGrid:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Board?", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "mangledName": "$s14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces(of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "mangledName": "$s14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces()", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "mangledName": "$s14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "insert", - "printedName": "insert(piece:atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "mangledName": "$s14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "removePiece", - "printedName": "removePiece(atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "mangledName": "$s14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5BoardV", - "mangledName": "$s14DouShouQiModel5BoardV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Piece", - "printedName": "Piece", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "animal", - "printedName": "animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withOwner:andAnimal:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "mangledName": "$s14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5PieceV", - "mangledName": "$s14DouShouQiModel5PieceV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "InvalidBoardError", - "printedName": "InvalidBoardError", - "children": [ - { - "kind": "Var", - "name": "unknownError", - "printedName": "unknownError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badDimensions", - "printedName": "badDimensions", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbRows: Swift.Int, nbColumns: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badCellType", - "printedName": "badCellType", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "multipleOccurenceOfSamePiece", - "printedName": "multipleOccurenceOfSamePiece", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceWithNoOwner", - "printedName": "pieceWithNoOwner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceNotAllowedOnThisCell", - "printedName": "pieceNotAllowedOnThisCell", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Owner", - "printedName": "Owner", - "children": [ - { - "kind": "Var", - "name": "noOne", - "printedName": "noOne", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO5noOneyA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO5noOneyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player1", - "printedName": "player1", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player1yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player1yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player2", - "printedName": "player2", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player2yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player2yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "simpleDescription", - "printedName": "simpleDescription", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivp", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivg", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel5OwnerO", - "mangledName": "$s14DouShouQiModel5OwnerO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Move", - "printedName": "Move", - "children": [ - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowOrigin", - "printedName": "rowOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnOrigin", - "printedName": "columnOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowDestination", - "printedName": "rowDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnDestination", - "printedName": "columnDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(of:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "mangledName": "$s14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4MoveV", - "mangledName": "$s14DouShouQiModel4MoveV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Animal", - "printedName": "Animal", - "children": [ - { - "kind": "Var", - "name": "rat", - "printedName": "rat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3ratyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3ratyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cat", - "printedName": "cat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3catyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3catyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "dog", - "printedName": "dog", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3dogyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3dogyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "wolf", - "printedName": "wolf", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4wolfyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4wolfyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "leopard", - "printedName": "leopard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO7leopardyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO7leopardyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tiger", - "printedName": "tiger", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO5tigeryA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO5tigeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "lion", - "printedName": "lion", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4lionyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4lionyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "elephant", - "printedName": "elephant", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO8elephantyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO8elephantyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "rawValue", - "printedName": "rawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivp", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivg", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(rawValue:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Animal?", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "moduleName": "DouShouQiModel", - "implicit": true, - "init_kind": "Designated" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6AnimalO", - "mangledName": "$s14DouShouQiModel6AnimalO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "enumRawTypeName": "Int", - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "RawRepresentable", - "printedName": "RawRepresentable", - "children": [ - { - "kind": "TypeWitness", - "name": "RawValue", - "printedName": "RawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "usr": "s:SY", - "mangledName": "$sSY" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Game", - "printedName": "Game", - "children": [ - { - "kind": "Var", - "name": "board", - "printedName": "board", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV5boardAA5BoardVvp", - "mangledName": "$s14DouShouQiModel4GameV5boardAA5BoardVvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV5boardAA5BoardVvg", - "mangledName": "$s14DouShouQiModel4GameV5boardAA5BoardVvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rules", - "printedName": "rules", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV5rulesAA5Rules_pvp", - "mangledName": "$s14DouShouQiModel4GameV5rulesAA5Rules_pvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV5rulesAA5Rules_pvg", - "mangledName": "$s14DouShouQiModel4GameV5rulesAA5Rules_pvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "players", - "printedName": "players", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvp", - "mangledName": "$s14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvg", - "mangledName": "$s14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameV9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "mangledName": "$s14DouShouQiModel4GameV9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withBoard:andRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameV9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "mangledName": "$s14DouShouQiModel4GameV9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "addGameStartedListener", - "printedName": "addGameStartedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE15StartedListeneryyyAA5BoardVcF", - "mangledName": "$s14DouShouQiModel4GameV03addE15StartedListeneryyyAA5BoardVcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addPlayerNotifiedListener", - "printedName": "addPlayerNotifiedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtcF", - "mangledName": "$s14DouShouQiModel4GameV25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addGameChangedListener", - "printedName": "addGameChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Game) async -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE15ChangedListeneryyyACYacF", - "mangledName": "$s14DouShouQiModel4GameV03addE15ChangedListeneryyyACYacF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addGameOverListener", - "printedName": "addGameOverListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "mangledName": "$s14DouShouQiModel4GameV03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addMoveChosenCallbacksListener", - "printedName": "addMoveChosenCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "mangledName": "$s14DouShouQiModel4GameV30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addInvalidMoveCallbacksListener", - "printedName": "addInvalidMoveCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "mangledName": "$s14DouShouQiModel4GameV31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addBoardChangedListener", - "printedName": "addBoardChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV23addBoardChangedListeneryyyAA0G0VcF", - "mangledName": "$s14DouShouQiModel4GameV23addBoardChangedListeneryyyAA0G0VcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "start", - "printedName": "start()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV5startyyYaKF", - "mangledName": "$s14DouShouQiModel4GameV5startyyYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4GameV", - "mangledName": "$s14DouShouQiModel4GameV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ] - } - ], - "json_format_version": 8 - }, - "ConstValues": [ - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 81, - "length": 2, - "value": "10" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 112, - "length": 1, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 149, - "length": 1, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3231, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3271, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4124, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 4468, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4658, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4700, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4748, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 5150, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 6352, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6372, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6412, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 9868, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10769, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11089, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11196, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 11353, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11371, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11463, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11508, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11616, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11660, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11752, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11815, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11923, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 12449, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12490, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12502, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12509, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12886, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12897, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12904, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13269, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13647, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15780, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15887, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15911, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16028, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16052, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16232, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16332, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16762, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16767, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 17131, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 17187, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 81, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 147, - "length": 4, - "value": "\"ΓΈ\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 152, - "length": 2, - "value": "\" on \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 167, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 202, - "length": 1, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 89, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 119, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2067, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2107, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2267, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2277, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2419, - "length": 1, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2429, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2964, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3004, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 3773, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3793, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3833, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4182, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4292, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4531, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4639, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4773, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4782, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4800, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4809, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4925, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 5013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 6962, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7077, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7105, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7230, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7258, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7350, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Dictionary", - "offset": 8072, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 8128, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "BooleanLiteral", - "offset": 475, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 570, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 694, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 981, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1015, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1049, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1212, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1278, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1548, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1965, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 40, - "value": "\"[\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 150, - "length": 1, - "value": "\":\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 160, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 183, - "length": 3, - "value": "\"x\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 229, - "length": 3, - "value": "\"1\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 275, - "length": 3, - "value": "\"2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 616, - "length": 87, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 625, - "length": 1, - "value": "\": [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 640, - "length": 1, - "value": "\",\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 656, - "length": 1, - "value": "\"] -> [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 679, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 701, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 514, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 982, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1253, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1585, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1966, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2405, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2818, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3238, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3681, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 4097, - "length": 5, - "value": "false" - } - ] -} \ No newline at end of file diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface deleted file mode 100644 index e325199..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +++ /dev/null @@ -1,237 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target arm64-apple-ios16.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.Player { - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public struct Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public mutating func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public mutating func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public mutating func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public mutating func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public mutating func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public mutating func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func start() async throws - #endif -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc deleted file mode 100644 index afa4fb6b0c4573a14664563bf1804a197eea511f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 696 zcmaDfX9YVW2Lpp90|Ns)qlJ#c+7Dby0=U-%aP4>CT5rI$Ux91Q2d>2%xY!*xUFbQa zy@N^j#3Ahshx9v`wD%m+SaZl(Xp58P1t*OOP8vYc#=uE?50mBGjnH89XK)H48yX)=@m&2h;u4bI3f4b1e-Pf5*TV0Z@{ZGs_BOfa>x}bCXhw6!Oy)ih!aZx+EjBSOKgS>w zeSHOdYC$0b2F%*U=hT6$XduSv2+O=A=lq<~+&r*5z@PM80|e diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface deleted file mode 100644 index e325199..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface +++ /dev/null @@ -1,237 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target arm64-apple-ios16.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.Player { - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public struct Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public mutating func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public mutating func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public mutating func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public mutating func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public mutating func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public mutating func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func start() async throws - #endif -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json deleted file mode 100644 index cd2a367..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json +++ /dev/null @@ -1,8173 +0,0 @@ -{ - "ABIRoot": { - "kind": "Root", - "name": "TopLevel", - "printedName": "TopLevel", - "children": [ - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Result", - "printedName": "Result", - "children": [ - { - "kind": "Var", - "name": "notFinished", - "printedName": "notFinished", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO11notFinishedyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO11notFinishedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "even", - "printedName": "even", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO4evenyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO4evenyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "winner", - "printedName": "winner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> (DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "mangledName": "$s14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6ResultO", - "mangledName": "$s14DouShouQiModel6ResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "WinningReason", - "printedName": "WinningReason", - "children": [ - { - "kind": "Var", - "name": "denReached", - "printedName": "denReached", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMorePieces", - "printedName": "noMorePieces", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tooManyOccurences", - "printedName": "tooManyOccurences", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMovesLeft", - "printedName": "noMovesLeft", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel13WinningReasonO", - "mangledName": "$s14DouShouQiModel13WinningReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "BoardResult", - "printedName": "BoardResult", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "ok", - "printedName": "ok", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO2okyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO2okyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "failed", - "printedName": "failed", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(reason: DouShouQiModel.BoardFailingReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel11BoardResultO", - "mangledName": "$s14DouShouQiModel11BoardResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "BoardFailingReason", - "printedName": "BoardFailingReason", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "outOfBounds", - "printedName": "outOfBounds", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellNotEmpty", - "printedName": "cellNotEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellEmpty", - "printedName": "cellEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel18BoardFailingReasonO", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "HumanPlayer", - "printedName": "HumanPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:andInputMethod:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "changeInput", - "printedName": "changeInput(input:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel11HumanPlayerC", - "mangledName": "$s14DouShouQiModel11HumanPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "ClassicRules", - "printedName": "ClassicRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesVACycfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel12ClassicRulesV", - "mangledName": "$s14DouShouQiModel12ClassicRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Cell", - "printedName": "Cell", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "cellType", - "printedName": "cellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "initialOwner", - "printedName": "initialOwner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "piece", - "printedName": "piece", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - }, - { - "kind": "Accessor", - "name": "Set", - "printedName": "Set()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "set" - }, - { - "kind": "Accessor", - "name": "Modify", - "printedName": "Modify()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "_modify" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(ofType:ownedBy:withPiece:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "hasDefaultArg": true, - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "hasDefaultArg": true, - "usr": "s:Sq" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "mangledName": "$s14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4CellV", - "mangledName": "$s14DouShouQiModel4CellV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "VerySimpleRules", - "printedName": "VerySimpleRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesVACycfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel15VerySimpleRulesV", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Rules", - "printedName": "Rules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "mangledName": "$s14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "mangledName": "$s14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "mangledName": "$s14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "mangledName": "$s14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "declAttributes": [ - "Mutating" - ], - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Protocol", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Player", - "printedName": "Player", - "children": [ - { - "kind": "Var", - "name": "name", - "printedName": "name", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvp", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvg", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "id", - "printedName": "id", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC10chooseMove2in4withAA0G0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel6PlayerC10chooseMove2in4withAA0G0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel6PlayerC", - "mangledName": "$s14DouShouQiModel6PlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "GameError", - "printedName": "GameError", - "children": [ - { - "kind": "Var", - "name": "invalidMove", - "printedName": "invalidMove", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "nextPlayerError", - "printedName": "nextPlayerError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badPlayerId", - "printedName": "badPlayerId", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> (Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(message: Swift.String)", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidRules", - "printedName": "invalidRules", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidPlayer", - "printedName": "invalidPlayer", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidGame", - "printedName": "invalidGame", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidBoard", - "printedName": "invalidBoard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "moduleName": "DouShouQiModel" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel9GameErrorO", - "mangledName": "$s14DouShouQiModel9GameErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "RandomPlayer", - "printedName": "RandomPlayer", - "children": [ - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12RandomPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "mangledName": "$s14DouShouQiModel12RandomPlayerC10chooseMove2in4withAA0H0VSgAA5BoardV_AA5Rules_ptF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.RandomPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "RandomPlayer", - "printedName": "DouShouQiModel.RandomPlayer", - "usr": "s:14DouShouQiModel12RandomPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel12RandomPlayerC", - "mangledName": "$s14DouShouQiModel12RandomPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "CellType", - "printedName": "CellType", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "jungle", - "printedName": "jungle", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO6jungleyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO6jungleyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "water", - "printedName": "water", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO5wateryA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO5wateryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "trap", - "printedName": "trap", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO4trapyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO4trapyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "den", - "printedName": "den", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO3denyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO3denyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "allCases", - "printedName": "allCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivp", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivg", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel8CellTypeO", - "mangledName": "$s14DouShouQiModel8CellTypeO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "CaseIterable", - "printedName": "CaseIterable", - "children": [ - { - "kind": "TypeWitness", - "name": "AllCases", - "printedName": "AllCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ] - } - ], - "usr": "s:s12CaseIterableP", - "mangledName": "$ss12CaseIterableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Board", - "printedName": "Board", - "children": [ - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "nbRows", - "printedName": "nbRows", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivp", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivg", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "nbColumns", - "printedName": "nbColumns", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivp", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivg", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "grid", - "printedName": "grid", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withGrid:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Board?", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "mangledName": "$s14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces(of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "mangledName": "$s14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces()", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "mangledName": "$s14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "insert", - "printedName": "insert(piece:atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "mangledName": "$s14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "removePiece", - "printedName": "removePiece(atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "mangledName": "$s14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5BoardV", - "mangledName": "$s14DouShouQiModel5BoardV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Piece", - "printedName": "Piece", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "animal", - "printedName": "animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withOwner:andAnimal:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "mangledName": "$s14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5PieceV", - "mangledName": "$s14DouShouQiModel5PieceV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "InvalidBoardError", - "printedName": "InvalidBoardError", - "children": [ - { - "kind": "Var", - "name": "unknownError", - "printedName": "unknownError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badDimensions", - "printedName": "badDimensions", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbRows: Swift.Int, nbColumns: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badCellType", - "printedName": "badCellType", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "multipleOccurenceOfSamePiece", - "printedName": "multipleOccurenceOfSamePiece", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceWithNoOwner", - "printedName": "pieceWithNoOwner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceNotAllowedOnThisCell", - "printedName": "pieceNotAllowedOnThisCell", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Owner", - "printedName": "Owner", - "children": [ - { - "kind": "Var", - "name": "noOne", - "printedName": "noOne", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO5noOneyA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO5noOneyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player1", - "printedName": "player1", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player1yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player1yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player2", - "printedName": "player2", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player2yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player2yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "simpleDescription", - "printedName": "simpleDescription", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivp", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivg", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel5OwnerO", - "mangledName": "$s14DouShouQiModel5OwnerO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Move", - "printedName": "Move", - "children": [ - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowOrigin", - "printedName": "rowOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnOrigin", - "printedName": "columnOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowDestination", - "printedName": "rowDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnDestination", - "printedName": "columnDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(of:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "mangledName": "$s14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4MoveV", - "mangledName": "$s14DouShouQiModel4MoveV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Animal", - "printedName": "Animal", - "children": [ - { - "kind": "Var", - "name": "rat", - "printedName": "rat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3ratyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3ratyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cat", - "printedName": "cat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3catyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3catyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "dog", - "printedName": "dog", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3dogyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3dogyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "wolf", - "printedName": "wolf", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4wolfyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4wolfyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "leopard", - "printedName": "leopard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO7leopardyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO7leopardyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tiger", - "printedName": "tiger", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO5tigeryA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO5tigeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "lion", - "printedName": "lion", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4lionyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4lionyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "elephant", - "printedName": "elephant", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO8elephantyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO8elephantyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "rawValue", - "printedName": "rawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivp", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivg", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(rawValue:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Animal?", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "moduleName": "DouShouQiModel", - "implicit": true, - "init_kind": "Designated" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6AnimalO", - "mangledName": "$s14DouShouQiModel6AnimalO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "enumRawTypeName": "Int", - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "RawRepresentable", - "printedName": "RawRepresentable", - "children": [ - { - "kind": "TypeWitness", - "name": "RawValue", - "printedName": "RawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "usr": "s:SY", - "mangledName": "$sSY" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Game", - "printedName": "Game", - "children": [ - { - "kind": "Var", - "name": "board", - "printedName": "board", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV5boardAA5BoardVvp", - "mangledName": "$s14DouShouQiModel4GameV5boardAA5BoardVvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV5boardAA5BoardVvg", - "mangledName": "$s14DouShouQiModel4GameV5boardAA5BoardVvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rules", - "printedName": "rules", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV5rulesAA5Rules_pvp", - "mangledName": "$s14DouShouQiModel4GameV5rulesAA5Rules_pvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV5rulesAA5Rules_pvg", - "mangledName": "$s14DouShouQiModel4GameV5rulesAA5Rules_pvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "players", - "printedName": "players", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvp", - "mangledName": "$s14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvg", - "mangledName": "$s14DouShouQiModel4GameV7playersSDyAA5OwnerOAA6PlayerCGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameV9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "mangledName": "$s14DouShouQiModel4GameV9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withBoard:andRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameV9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "mangledName": "$s14DouShouQiModel4GameV9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "addGameStartedListener", - "printedName": "addGameStartedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE15StartedListeneryyyAA5BoardVcF", - "mangledName": "$s14DouShouQiModel4GameV03addE15StartedListeneryyyAA5BoardVcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addPlayerNotifiedListener", - "printedName": "addPlayerNotifiedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtcF", - "mangledName": "$s14DouShouQiModel4GameV25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addGameChangedListener", - "printedName": "addGameChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Game) async -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE15ChangedListeneryyyACYacF", - "mangledName": "$s14DouShouQiModel4GameV03addE15ChangedListeneryyyACYacF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addGameOverListener", - "printedName": "addGameOverListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "mangledName": "$s14DouShouQiModel4GameV03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addMoveChosenCallbacksListener", - "printedName": "addMoveChosenCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "mangledName": "$s14DouShouQiModel4GameV30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addInvalidMoveCallbacksListener", - "printedName": "addInvalidMoveCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "mangledName": "$s14DouShouQiModel4GameV31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "addBoardChangedListener", - "printedName": "addBoardChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV23addBoardChangedListeneryyyAA0G0VcF", - "mangledName": "$s14DouShouQiModel4GameV23addBoardChangedListeneryyyAA0G0VcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "start", - "printedName": "start()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameV5startyyYaKF", - "mangledName": "$s14DouShouQiModel4GameV5startyyYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4GameV", - "mangledName": "$s14DouShouQiModel4GameV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ] - } - ], - "json_format_version": 8 - }, - "ConstValues": [ - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 81, - "length": 2, - "value": "10" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 112, - "length": 1, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 149, - "length": 1, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3231, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3271, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4124, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 4468, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4658, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4700, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4748, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 5150, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 6352, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6372, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6412, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 9868, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10769, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11089, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11196, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 11353, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11371, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11463, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11508, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11616, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11660, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11752, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11815, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11923, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 12449, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12490, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12502, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12509, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12886, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12897, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12904, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13269, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13647, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15780, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15887, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15911, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16028, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16052, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16232, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16332, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16762, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16767, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 17131, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 17187, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 81, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 147, - "length": 4, - "value": "\"ΓΈ\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 152, - "length": 2, - "value": "\" on \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 167, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 202, - "length": 1, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 89, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 119, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2067, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2107, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2267, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2277, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2419, - "length": 1, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2429, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2964, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3004, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 3773, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3793, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3833, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4182, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4292, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4531, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4639, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4773, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4782, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4800, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4809, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4925, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 5013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 6962, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7077, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7105, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7230, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7258, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7350, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Dictionary", - "offset": 8072, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 8128, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "BooleanLiteral", - "offset": 475, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 570, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 694, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 981, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1015, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1049, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1212, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1278, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1548, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1965, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 40, - "value": "\"[\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 150, - "length": 1, - "value": "\":\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 160, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 183, - "length": 3, - "value": "\"x\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 229, - "length": 3, - "value": "\"1\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 275, - "length": 3, - "value": "\"2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 616, - "length": 87, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 625, - "length": 1, - "value": "\": [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 640, - "length": 1, - "value": "\",\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 656, - "length": 1, - "value": "\"] -> [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 679, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 701, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 514, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 982, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1253, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1585, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1966, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2405, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2818, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3238, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3681, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQiModel\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 4097, - "length": 5, - "value": "false" - } - ] -} \ No newline at end of file diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface deleted file mode 100644 index 8f901d4..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +++ /dev/null @@ -1,237 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target x86_64-apple-ios16.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.Player { - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public struct Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public mutating func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public mutating func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public mutating func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public mutating func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public mutating func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public mutating func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func start() async throws - #endif -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc deleted file mode 100644 index a83d9d1f3896bf73ddba5c7a3472239d2c22e76d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 696 zcmaDfX9YVW2Lpp90|Ns)qlJ#c+7Dby0=U-%aP4>CT5rI$Ux91Q2d>2%xY!*xUFbQa zy@N^j#3Ahshx9v`wD%m+SaZl(Xp58P1t*OOP8vYc#=uE?50mBGjnH89XK)H48yX)=@m&2h;u4bI3f4b1e-Pf5*TVE6_UtFSPOH#5;q1X-b* znO|&Zre~mAoS9pilUR~p1aU^IAOk}nkZHswz~d#un85@QW?*7?#VP(>1;`5p;$ka9 z6I2^ao$?clQo_vgl7jNfi-R-E3S@xl@=9})Qi~Mw(-ew;q9D2?BePfmtQO>TRv=ac zVtsvm1$=5jAp-`?+QsM8fvjjC#_0&lyd>xRoYLGpush^|N)cu!LnN>}1>`+cr(jhM Yb`3P Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.Player { - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) -> DouShouQiModel.Move? - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public struct Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public mutating func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public mutating func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public mutating func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public mutating func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public mutating func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public mutating func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public mutating func start() async throws - #endif -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/module.modulemap b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/module.modulemap deleted file mode 100644 index e7aa10a..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/module.modulemap +++ /dev/null @@ -1,11 +0,0 @@ -framework module DouShouQiModel { - umbrella header "DouShouQiModel.h" - export * - - module * { export * } -} - -module DouShouQiModel.Swift { - header "DouShouQiModel-Swift.h" - requires objc -} diff --git a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/_CodeSignature/CodeResources b/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/_CodeSignature/CodeResources deleted file mode 100644 index ee2007f..0000000 --- a/ArkitDoushiQi/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/_CodeSignature/CodeResources +++ /dev/null @@ -1,245 +0,0 @@ - - - - - files - - Headers/DouShouQiModel-Swift.h - - Ugz84k7Dtyq8c1kVv5knXzRL8M8= - - Headers/DouShouQiModel.h - - oRFeERlH0MoI6LrvagIzL3ni4lM= - - Info.plist - - nK7+MI/Ze6f+km/d+6SafK4UOHw= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.abi.json - - ORHQTNNRc9+IsP4LksefJ/Un4co= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface - - TrksqYdbCnunTEUAwWwTpaYcpsw= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc - - uNDHcaRHf/ULIsVZEMiJY2HGm4c= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface - - TrksqYdbCnunTEUAwWwTpaYcpsw= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftmodule - - niSvjNrBHUwlxy9t/BiJgPTMiPg= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json - - ORHQTNNRc9+IsP4LksefJ/Un4co= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface - - YcS2+5tyo+CmBm6pQDGd5mEiThU= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc - - tkYnhquJQVCRsNSI7Hl83a7/uFk= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftinterface - - YcS2+5tyo+CmBm6pQDGd5mEiThU= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftmodule - - N3Eb6UlFU35CftT5wPZyYa92V5E= - - Modules/module.modulemap - - tOh1oseR3w5cW6xQIaaghrv9LlM= - - - files2 - - Headers/DouShouQiModel-Swift.h - - hash2 - - X8yw4Beas8gUjOV/b4G2i2nanoGnSlTcLKeBiIYLXRI= - - - Headers/DouShouQiModel.h - - hash2 - - a0LOmZXPnWhpMKaBoW1IdxOGAzn4RhRBe32928+2jeU= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.abi.json - - hash2 - - Pt6SWYmHEErGtBh0mEB4VEPht9Iux6dxkyyQGWWhG/Y= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface - - hash2 - - qTNo5hgcTOuf2g689PNLik8dWCGccEAjtekFLXp1wUk= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc - - hash2 - - cpfiPzUVsQ9nZcmz7k/CLhMlNAa3hCWAVPNrKBhrKls= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface - - hash2 - - qTNo5hgcTOuf2g689PNLik8dWCGccEAjtekFLXp1wUk= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftmodule - - hash2 - - mN4VlJdyDumXrJGI22VAiH/Ul6Oc2C+uCwrh87ZQa7M= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json - - hash2 - - Pt6SWYmHEErGtBh0mEB4VEPht9Iux6dxkyyQGWWhG/Y= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface - - hash2 - - z3xla/MZG9g10flpEIOyL+U5cXaaJ6kKdYGBkiRDkS8= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc - - hash2 - - SsJ/b3BHzQ9S5Wz5tzNZPeo8WQ4dX+hCQFo95fU45as= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftinterface - - hash2 - - z3xla/MZG9g10flpEIOyL+U5cXaaJ6kKdYGBkiRDkS8= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftmodule - - hash2 - - Qt7bWwgfMeu4WIFkhcpt6CfGKzHwTtpnXsLo3vVFEMI= - - - Modules/module.modulemap - - hash2 - - XJ885pOXSQHhlMUP6dyA/ER9+SP/HZ+IMImbB4k5+rI= - - - - rules - - ^.* - - ^.*\.lproj/ - - optional - - weight - 1000 - - ^.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Base\.lproj/ - - weight - 1010 - - ^version.plist$ - - - rules2 - - .*\.dSYM($|/) - - weight - 11 - - ^(.*/)?\.DS_Store$ - - omit - - weight - 2000 - - ^.* - - ^.*\.lproj/ - - optional - - weight - 1000 - - ^.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Base\.lproj/ - - weight - 1010 - - ^Info\.plist$ - - omit - - weight - 20 - - ^PkgInfo$ - - omit - - weight - 20 - - ^embedded\.provisionprofile$ - - weight - 20 - - ^version\.plist$ - - weight - 20 - - - -