Fast-forward to later exercises - Saddle Point in progress
This commit is contained in:
parent
ad938edbce
commit
69ae16879c
468 changed files with 15060 additions and 0 deletions
BIN
kotlin/atbash-cipher/.gradle/3.5/file-changes/last-build.bin
Normal file
BIN
kotlin/atbash-cipher/.gradle/3.5/file-changes/last-build.bin
Normal file
Binary file not shown.
BIN
kotlin/atbash-cipher/.gradle/3.5/taskHistory/taskHistory.lock
Normal file
BIN
kotlin/atbash-cipher/.gradle/3.5/taskHistory/taskHistory.lock
Normal file
Binary file not shown.
|
@ -0,0 +1,2 @@
|
|||
#Wed Jul 19 11:23:15 EDT 2017
|
||||
gradle.version=3.5
|
|
@ -0,0 +1 @@
|
|||
|
9
kotlin/atbash-cipher/.idea/compiler.xml
generated
Normal file
9
kotlin/atbash-cipher/.idea/compiler.xml
generated
Normal file
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<bytecodeTargetLevel>
|
||||
<module name="atbash-cipher_main" target="1.8" />
|
||||
<module name="atbash-cipher_test" target="1.8" />
|
||||
</bytecodeTargetLevel>
|
||||
</component>
|
||||
</project>
|
19
kotlin/atbash-cipher/.idea/gradle.xml
generated
Normal file
19
kotlin/atbash-cipher/.idea/gradle.xml
generated
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="GradleSettings">
|
||||
<option name="linkedExternalProjectsSettings">
|
||||
<GradleProjectSettings>
|
||||
<option name="distributionType" value="LOCAL" />
|
||||
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="gradleHome" value="C:/Gradle/gradle-3.5" />
|
||||
<option name="gradleJvm" value="1.8" />
|
||||
<option name="modules">
|
||||
<set>
|
||||
<option value="$PROJECT_DIR$" />
|
||||
</set>
|
||||
</option>
|
||||
<option name="useAutoImport" value="true" />
|
||||
</GradleProjectSettings>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
11
kotlin/atbash-cipher/.idea/libraries/Gradle__junit_junit_4_12.xml
generated
Normal file
11
kotlin/atbash-cipher/.idea/libraries/Gradle__junit_junit_4_12.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: junit:junit:4.12">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/2973d150c0dc1fefe998f834810d68f278ea58ec/junit-4.12.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/a6c32b40bf3d76eca54e3c601e5d1470c86fcdfa/junit-4.12-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml
generated
Normal file
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-core:1.3">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/1dc37250fbc78e23a65a67fbbaf71d2e9cbc3c0b/hamcrest-core-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml
generated
Normal file
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains:annotations:13.0">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/5991ca87ef1fb5544943d9abc5a9a37583fabe03/annotations-13.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_1.xml
generated
Normal file
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/98e484e67f913e934559f7f55f0c94be5593f03c/kotlin-stdlib-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/a287944d92875a1f3c2161e5cddaede7720913d1/kotlin-stdlib-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_1_1.xml
generated
Normal file
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-test:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test/1.1.1/5a852a554eb4f9fb93efdffa352b7983ed595e32/kotlin-test-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test/1.1.1/4b9a869f86569edea4a07d19b9749ac835fb7207/kotlin-test-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit_1_1_1.xml
generated
Normal file
11
kotlin/atbash-cipher/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-test-junit:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test-junit/1.1.1/a1865f59b6f72597452e5bdfefeb14d13bc31c7d/kotlin-test-junit-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test-junit/1.1.1/ed59de63c4565c708124caaa4e86562a780f9ba0/kotlin-test-junit-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
6
kotlin/atbash-cipher/.idea/misc.xml
generated
Normal file
6
kotlin/atbash-cipher/.idea/misc.xml
generated
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/classes" />
|
||||
</component>
|
||||
</project>
|
10
kotlin/atbash-cipher/.idea/modules.xml
generated
Normal file
10
kotlin/atbash-cipher/.idea/modules.xml
generated
Normal file
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/atbash-cipher.iml" filepath="$PROJECT_DIR$/atbash-cipher.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/atbash-cipher_main.iml" filepath="$PROJECT_DIR$/.idea/modules/atbash-cipher_main.iml" group="atbash-cipher" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/atbash-cipher_test.iml" filepath="$PROJECT_DIR$/.idea/modules/atbash-cipher_test.iml" group="atbash-cipher" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
39
kotlin/atbash-cipher/.idea/modules/atbash-cipher_main.iml
generated
Normal file
39
kotlin/atbash-cipher/.idea/modules/atbash-cipher_main.iml
generated
Normal file
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="atbash-cipher:main" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="kotlin-language" name="Kotlin">
|
||||
<configuration version="3" platform="JVM 1.6" useProjectSettings="false">
|
||||
<compilerSettings />
|
||||
<compilerArguments>
|
||||
<option name="noStdlib" value="true" />
|
||||
<option name="noReflect" value="true" />
|
||||
<option name="moduleName" value="atbash-cipher_main" />
|
||||
<option name="jvmTarget" value="1.6" />
|
||||
<option name="addCompilerBuiltIns" value="true" />
|
||||
<option name="loadBuiltInsFromDependencies" value="true" />
|
||||
<option name="languageVersion" value="1.1" />
|
||||
<option name="apiVersion" value="1.1" />
|
||||
<option name="pluginOptions">
|
||||
<array />
|
||||
</option>
|
||||
<option name="pluginClasspaths">
|
||||
<array />
|
||||
</option>
|
||||
</compilerArguments>
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||
<output url="file://$MODULE_DIR$/../../out/production/classes" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$/../../src/main">
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/kotlin" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/resources" type="java-resource" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
|
||||
</component>
|
||||
</module>
|
45
kotlin/atbash-cipher/.idea/modules/atbash-cipher_test.iml
generated
Normal file
45
kotlin/atbash-cipher/.idea/modules/atbash-cipher_test.iml
generated
Normal file
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="atbash-cipher:test" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="kotlin-language" name="Kotlin">
|
||||
<configuration version="3" platform="JVM 1.6" useProjectSettings="false">
|
||||
<compilerSettings />
|
||||
<compilerArguments>
|
||||
<option name="noStdlib" value="true" />
|
||||
<option name="noReflect" value="true" />
|
||||
<option name="moduleName" value="atbash-cipher_main" />
|
||||
<option name="jvmTarget" value="1.6" />
|
||||
<option name="addCompilerBuiltIns" value="true" />
|
||||
<option name="loadBuiltInsFromDependencies" value="true" />
|
||||
<option name="languageVersion" value="1.1" />
|
||||
<option name="apiVersion" value="1.1" />
|
||||
<option name="pluginOptions">
|
||||
<array />
|
||||
</option>
|
||||
<option name="pluginClasspaths">
|
||||
<array />
|
||||
</option>
|
||||
</compilerArguments>
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||
<output-test url="file://$MODULE_DIR$/../../out/test/classes" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$/../../src/test">
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/kotlin" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/resources" type="java-test-resource" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="atbash-cipher_main" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: junit:junit:4.12" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-test-junit:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-test:1.1.1" level="project" />
|
||||
</component>
|
||||
<component name="TestModuleProperties" production-module="atbash-cipher_main" />
|
||||
</module>
|
746
kotlin/atbash-cipher/.idea/workspace.xml
generated
Normal file
746
kotlin/atbash-cipher/.idea/workspace.xml
generated
Normal file
|
@ -0,0 +1,746 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="fa287d79-b1fb-4179-982e-bbed626c0d06" name="Default" comment="" />
|
||||
<ignored path="$PROJECT_DIR$/.gradle/" />
|
||||
<ignored path="$PROJECT_DIR$/build/" />
|
||||
<ignored path="$PROJECT_DIR$/out/" />
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="TRACKING_ENABLED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="ExternalProjectsData">
|
||||
<projectState path="$PROJECT_DIR$">
|
||||
<ProjectState />
|
||||
</projectState>
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf>
|
||||
<file leaf-file-name="AtbashTest.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/test/kotlin/AtbashTest.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1806">
|
||||
<caret line="47" column="0" lean-forward="false" selection-start-line="47" selection-start-column="0" selection-end-line="47" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="Atbash.kt" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/main/kotlin/Atbash.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="473">
|
||||
<caret line="11" column="0" lean-forward="true" selection-start-line="11" selection-start-column="0" selection-end-line="11" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="README.md" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Kotlin Class" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="GradleLocalSettings">
|
||||
<option name="myGradleHomes">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="C:\Gradle\gradle-3.5" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="myGradleVersions">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="3.5" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="availableProjects">
|
||||
<map>
|
||||
<entry>
|
||||
<key>
|
||||
<ExternalProjectPojo>
|
||||
<option name="name" value="atbash-cipher" />
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalProjectPojo>
|
||||
</key>
|
||||
<value>
|
||||
<list>
|
||||
<ExternalProjectPojo>
|
||||
<option name="name" value="atbash-cipher" />
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalProjectPojo>
|
||||
</list>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="availableTasks">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<list>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the components produced by root project 'atbash-cipher'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="components" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project and all projects that depend on it." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildDependents" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the sub-projects of root project 'atbash-cipher'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="projects" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles main classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="classes" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the dependent components of components in root project 'atbash-cipher'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependentComponents" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays all buildscript dependencies declared in root project 'atbash-cipher'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildEnvironment" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Generates Gradle wrapper files." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="wrapper" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles test classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="testClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Generates Javadoc API documentation for the main source code." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="javadoc" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles a jar archive containing the main classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="jar" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the configuration model of root project 'atbash-cipher'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="model" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="copyMainKotlinClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Processes main resources." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="processResources" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the tasks runnable from root project 'atbash-cipher'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="tasks" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Initializes a new Gradle build." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="init" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="copyTestKotlinClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Runs the unit tests." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="test" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles main Java source." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileJava" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles the source set 'test'.kotlin." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileTestKotlin" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the insight into a specific dependency in root project 'atbash-cipher'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependencyInsight" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Runs all checks." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="check" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles the outputs of this project." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="assemble" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Deletes the build directory." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="clean" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles test Java source." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileTestJava" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays all dependencies declared in root project 'atbash-cipher'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependencies" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Processes test resources." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="processTestResources" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays a help message." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="help" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles the source set 'main'.kotlin." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileKotlin" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="build" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project and all projects it depends on." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildNeeded" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the properties of root project 'atbash-cipher'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="properties" />
|
||||
</ExternalTaskPojo>
|
||||
</list>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="modificationStamps">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="1500477779052" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="projectBuildClasspath">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<ExternalProjectBuildClasspathPojo>
|
||||
<option name="modulesBuildClasspath">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<ExternalModuleBuildClasspathPojo>
|
||||
<option name="entries">
|
||||
<list>
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin/1.1.1/e742de8adf25f631b39f74e2d6fd00cd9cdd609e/kotlin-gradle-plugin-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin/1.1.1/5e3d99580c70b67a07cd70481943362e4b29d8d3/kotlin-gradle-plugin-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.4/f2d8698c46d1167ff24b06a840a87d91a02db891/commons-io-2.4-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.4/b1b6ea3b7e4aa4f492509a4952029cd8e48019ad/commons-io-2.4.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.6/67313d715fbf0ea4fd0bdb69217fb77f807a8ce5/commons-lang-2.6-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.6/ce1edb914c94ebc388f086c6827e8bdeec71ac2/commons-lang-2.6.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/a287944d92875a1f3c2161e5cddaede7720913d1/kotlin-stdlib-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/98e484e67f913e934559f7f55f0c94be5593f03c/kotlin-stdlib-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-android-extensions/1.1.1/2c0ad82587d187f78c4063fa7867ed3c4dfa54ca/kotlin-android-extensions-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-android-extensions/1.1.1/56cfcc61bc91638ea52d13ce90b565f50be3d6f5/kotlin-android-extensions-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin-api/1.1.1/e48aafb092d4c3ddd6927f38f9f17f7117e1ef47/kotlin-gradle-plugin-api-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin-api/1.1.1/9083de2c98801f1fe058b6280234265269c1cad0/kotlin-gradle-plugin-api-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.1.1/b84662e33f8f44d33265e964f1329ce5644af35c/kotlin-compiler-embeddable-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.1.1/d975091bb224a04b3717505a55875608642cc8d3/kotlin-compiler-embeddable-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-runner/1.1.1/764b45d92a761810b29580aeae2fac3d614f9bf/kotlin-compiler-runner-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-runner/1.1.1/cad5c437ac58f7245673a6c4fd73a656dd259b26/kotlin-compiler-runner-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-annotation-processing/1.1.1/2756d002e8d1d1aa0d5a49e7c895b87514083fab/kotlin-annotation-processing-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-annotation-processing/1.1.1/9f7312cea58b39ce82368261cd227758df78eb32/kotlin-annotation-processing-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/5991ca87ef1fb5544943d9abc5a9a37583fabe03/annotations-13.0-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar" />
|
||||
</list>
|
||||
</option>
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalModuleBuildClasspathPojo>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="name" value="atbash-cipher" />
|
||||
<option name="projectBuildClasspath">
|
||||
<list>
|
||||
<option value="C:/Gradle/gradle-3.5/lib/ant-1.9.6.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/ant-launcher-1.9.6.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-base-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-base-services-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-cli-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-core-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-docs-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-installation-beacon-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-jvm-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-launcher-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-logging-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-messaging-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-model-core-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-model-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-open-api-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-process-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-resources-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-runtime-api-info-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-script-kotlin-0.8.0.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-tooling-api-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-ui-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-version-info-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-wrapper-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/groovy-all-2.4.10.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-announce-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-antlr-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-cache-http-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-comparison-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-init-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-code-quality-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-composite-builds-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-dependency-management-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-diagnostics-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ear-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-play-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ivy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-jacoco-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-javascript-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-jetty-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-java-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-scala-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-maven-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-osgi-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-base-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-play-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugin-development-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugin-use-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugins-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-publish-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-reporting-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-http-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-s3-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-sftp-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-scala-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-signing-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-test-kit-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-base-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-tooling-api-builders-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-workers-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/ivy-2.2.0.jar" />
|
||||
<option value="$PROJECT_DIR$/buildSrc/src/main/java" />
|
||||
<option value="$PROJECT_DIR$/buildSrc/src/main/groovy" />
|
||||
</list>
|
||||
</option>
|
||||
</ExternalProjectBuildClasspathPojo>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="externalProjectsViewState">
|
||||
<projects_view />
|
||||
</option>
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/src/test/kotlin/AtbashTest.kt" />
|
||||
<option value="$PROJECT_DIR$/src/main/kotlin/Atbash.kt" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsGulpfileManager">
|
||||
<detection-done>true</detection-done>
|
||||
<sorting>DEFINITION_ORDER</sorting>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds" extendedState="6">
|
||||
<option name="x" value="-16" />
|
||||
<option name="y" value="-16" />
|
||||
<option name="width" value="3856" />
|
||||
<option name="height" value="2092" />
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator currentView="ProjectPane" proportions="" version="1">
|
||||
<flattenPackages />
|
||||
<showMembers />
|
||||
<showModules />
|
||||
<showLibraryContents />
|
||||
<hideEmptyPackages />
|
||||
<abbreviatePackageNames />
|
||||
<autoscrollToSource />
|
||||
<autoscrollFromSource />
|
||||
<sortByType />
|
||||
<manualOrder />
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="Scope" />
|
||||
<pane id="Scratches" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
<path>
|
||||
<item name="atbash-cipher" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="atbash-cipher" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="atbash-cipher" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="atbash-cipher" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="atbash-cipher" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="atbash-cipher" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="atbash-cipher" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="atbash-cipher" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="kotlin" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="atbash-cipher" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="atbash-cipher" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="test" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="atbash-cipher" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="atbash-cipher" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="test" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="kotlin" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="settings.editor.selected.configurable" value="reference.settings.project.maven.runner" />
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/../nth-prime" />
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager" selected="JUnit.AtbashTest">
|
||||
<configuration name="AtbashTest$EncodeTest.test" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="atbash-cipher_test" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" value="" />
|
||||
<option name="MAIN_CLASS_NAME" value="AtbashTest$EncodeTest" />
|
||||
<option name="METHOD_NAME" value="test" />
|
||||
<option name="TEST_OBJECT" value="method" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration name="AtbashTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="atbash-cipher_test" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" value="" />
|
||||
<option name="MAIN_CLASS_NAME" value="AtbashTest" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="TEST_OBJECT" value="class" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration default="true" type="Applet" factoryName="Applet">
|
||||
<option name="WIDTH" value="400" />
|
||||
<option name="HEIGHT" value="300" />
|
||||
<option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
|
||||
<module />
|
||||
</configuration>
|
||||
<configuration default="true" type="Application" factoryName="Application">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="VM_PARAMETERS" />
|
||||
<option name="PROGRAM_PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="ENABLE_SWING_INSPECTOR" value="false" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<module name="" />
|
||||
<envs />
|
||||
</configuration>
|
||||
<configuration default="true" type="JUnit" factoryName="JUnit">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="TEST_OBJECT" value="class" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration default="true" type="Remote" factoryName="Remote">
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true" />
|
||||
<option name="SERVER_MODE" value="false" />
|
||||
<option name="SHMEM_ADDRESS" value="javadebug" />
|
||||
<option name="HOST" value="localhost" />
|
||||
<option name="PORT" value="5005" />
|
||||
</configuration>
|
||||
<configuration default="true" type="TestNG" factoryName="TestNG">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="SUITE_NAME" />
|
||||
<option name="PACKAGE_NAME" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="GROUP_NAME" />
|
||||
<option name="TEST_OBJECT" value="CLASS" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
||||
<option name="OUTPUT_DIRECTORY" />
|
||||
<option name="ANNOTATION_TYPE" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<option name="USE_DEFAULT_REPORTERS" value="false" />
|
||||
<option name="PROPERTIES_FILE" />
|
||||
<envs />
|
||||
<properties />
|
||||
<listeners />
|
||||
</configuration>
|
||||
<configuration name="<template>" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" default="true" selected="false">
|
||||
<option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
|
||||
</configuration>
|
||||
<list size="2">
|
||||
<item index="0" class="java.lang.String" itemvalue="JUnit.AtbashTest$EncodeTest.test" />
|
||||
<item index="1" class="java.lang.String" itemvalue="JUnit.AtbashTest" />
|
||||
</list>
|
||||
<recent_temporary>
|
||||
<list size="2">
|
||||
<item index="0" class="java.lang.String" itemvalue="JUnit.AtbashTest" />
|
||||
<item index="1" class="java.lang.String" itemvalue="JUnit.AtbashTest$EncodeTest.test" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SbtLocalSettings">
|
||||
<option name="lastUpdateTimestamp" value="1500477795308" />
|
||||
<option name="externalProjectsViewState">
|
||||
<projects_view />
|
||||
</option>
|
||||
</component>
|
||||
<component name="ShelveChangesManager" show_recycled="false">
|
||||
<option name="remove_strategy" value="false" />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="fa287d79-b1fb-4179-982e-bbed626c0d06" name="Default" comment="" />
|
||||
<created>1500477791006</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1500477791006</updated>
|
||||
<workItem from="1500477795115" duration="1710000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TestHistory">
|
||||
<history-entry file="AtbashTest - 2017.07.19 at 19h 31m 43s.xml">
|
||||
<configuration name="AtbashTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="AtbashTest - 2017.07.19 at 19h 31m 56s.xml">
|
||||
<configuration name="AtbashTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="AtbashTest - 2017.07.19 at 19h 32m 11s.xml">
|
||||
<configuration name="AtbashTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="AtbashTest$EncodeTest_test - 2017.07.19 at 19h 28m 42s.xml">
|
||||
<configuration name="AtbashTest$EncodeTest.test" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="AtbashTest$EncodeTest_test - 2017.07.19 at 19h 30m 22s.xml">
|
||||
<configuration name="AtbashTest$EncodeTest.test" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="AtbashTest$EncodeTest_test - 2017.07.19 at 19h 31m 06s.xml">
|
||||
<configuration name="AtbashTest$EncodeTest.test" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
</component>
|
||||
<component name="TimeTrackingManager">
|
||||
<option name="totallyTimeSpent" value="1710000" />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-16" y="-16" width="3872" height="2092" extended-state="6" />
|
||||
<editor active="true" />
|
||||
<layout>
|
||||
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="SBT" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32944444" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="sbt-shell-toolwindow" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Gradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
<component name="VcsContentAnnotationSettings">
|
||||
<option name="myLimit" value="2678400000" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager />
|
||||
<watches-manager />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/test/kotlin/AtbashTest.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1806">
|
||||
<caret line="47" column="0" lean-forward="false" selection-start-line="47" selection-start-column="0" selection-end-line="47" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/kotlin/Atbash.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="473">
|
||||
<caret line="11" column="0" lean-forward="true" selection-start-line="11" selection-start-column="0" selection-end-line="11" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</component>
|
||||
<component name="masterDetails">
|
||||
<states>
|
||||
<state key="ProjectJDKs.UI">
|
||||
<settings>
|
||||
<last-edited>1.8</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
</states>
|
||||
</component>
|
||||
</project>
|
37
kotlin/atbash-cipher/README.md
Normal file
37
kotlin/atbash-cipher/README.md
Normal file
|
@ -0,0 +1,37 @@
|
|||
# Atbash Cipher
|
||||
|
||||
Create an implementation of the atbash cipher, an ancient encryption system created in the Middle East.
|
||||
|
||||
The Atbash cipher is a simple substitution cipher that relies on
|
||||
transposing all the letters in the alphabet such that the resulting
|
||||
alphabet is backwards. The first letter is replaced with the last
|
||||
letter, the second with the second-last, and so on.
|
||||
|
||||
An Atbash cipher for the Latin alphabet would be as follows:
|
||||
|
||||
```plain
|
||||
Plain: abcdefghijklmnopqrstuvwxyz
|
||||
Cipher: zyxwvutsrqponmlkjihgfedcba
|
||||
```
|
||||
|
||||
It is a very weak cipher because it only has one possible key, and it is
|
||||
a simple monoalphabetic substitution cipher. However, this may not have
|
||||
been an issue in the cipher's time.
|
||||
|
||||
Ciphertext is written out in groups of fixed length, the traditional group size
|
||||
being 5 letters, and punctuation is excluded. This is to make it harder to guess
|
||||
things based on word boundaries.
|
||||
|
||||
## Examples
|
||||
- Encoding `test` gives `gvhg`
|
||||
- Decoding `gvhg` gives `test`
|
||||
- Decoding `gsvjf rxpyi ldmul cqfnk hlevi gsvoz abwlt` gives `thequickbrownfoxjumpsoverthelazydog`
|
||||
|
||||
|
||||
|
||||
## Source
|
||||
|
||||
Wikipedia [http://en.wikipedia.org/wiki/Atbash](http://en.wikipedia.org/wiki/Atbash)
|
||||
|
||||
## Submitting Incomplete Solutions
|
||||
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
13
kotlin/atbash-cipher/atbash-cipher.iml
Normal file
13
kotlin/atbash-cipher/atbash-cipher.iml
Normal file
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="atbash-cipher" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/out" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
28
kotlin/atbash-cipher/build.gradle
Normal file
28
kotlin/atbash-cipher/build.gradle
Normal file
|
@ -0,0 +1,28 @@
|
|||
buildscript {
|
||||
ext.kotlin_version = '1.1.1'
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
}
|
||||
}
|
||||
|
||||
apply plugin: 'kotlin'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
||||
|
||||
testCompile 'junit:junit:4.12'
|
||||
testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"
|
||||
}
|
||||
test {
|
||||
testLogging {
|
||||
exceptionFormat = 'full'
|
||||
events = ["passed", "failed", "skipped"]
|
||||
}
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
11001
|
Binary file not shown.
BIN
kotlin/atbash-cipher/out/production/classes/Atbash.class
Normal file
BIN
kotlin/atbash-cipher/out/production/classes/Atbash.class
Normal file
Binary file not shown.
BIN
kotlin/atbash-cipher/out/production/classes/AtbashKt.class
Normal file
BIN
kotlin/atbash-cipher/out/production/classes/AtbashKt.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
kotlin/atbash-cipher/out/test/classes/AtbashTest.class
Normal file
BIN
kotlin/atbash-cipher/out/test/classes/AtbashTest.class
Normal file
Binary file not shown.
0
kotlin/atbash-cipher/src/main/kotlin/.keep
Normal file
0
kotlin/atbash-cipher/src/main/kotlin/.keep
Normal file
54
kotlin/atbash-cipher/src/main/kotlin/Atbash.kt
Normal file
54
kotlin/atbash-cipher/src/main/kotlin/Atbash.kt
Normal file
|
@ -0,0 +1,54 @@
|
|||
class Atbash {
|
||||
companion object {
|
||||
fun encode(inpString: String): String {
|
||||
return inpString.filter { it.isLetterOrDigit() }.map { it.atbash() }.joinToString(separator = "").splitIntoFives()
|
||||
}
|
||||
|
||||
fun decode(inpString: String): String {
|
||||
return inpString.filter { it.isLetterOrDigit() }.map { it.atbash() }.joinToString(separator = "")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun String.splitIntoFives():String {
|
||||
var outString = ""
|
||||
for (i in IntRange(0, this.length-1).step(5)) {
|
||||
for (j in 0..4) {
|
||||
outString += this.getOrElse(i + j, { ' ' })
|
||||
}
|
||||
outString += " "
|
||||
}
|
||||
return outString.trim()
|
||||
}
|
||||
|
||||
fun Char.atbash(): Char{
|
||||
return when (this.toLowerCase()){
|
||||
'a' -> 'z'
|
||||
'b' -> 'y'
|
||||
'c' -> 'x'
|
||||
'd' -> 'w'
|
||||
'e' -> 'v'
|
||||
'f' -> 'u'
|
||||
'g' -> 't'
|
||||
'h' -> 's'
|
||||
'i' -> 'r'
|
||||
'j' -> 'q'
|
||||
'k' -> 'p'
|
||||
'l' -> 'o'
|
||||
'm' -> 'n'
|
||||
'n' -> 'm'
|
||||
'o' -> 'l'
|
||||
'p' -> 'k'
|
||||
'q' -> 'j'
|
||||
'r' -> 'i'
|
||||
's' -> 'h'
|
||||
't' -> 'g'
|
||||
'u' -> 'f'
|
||||
'v' -> 'e'
|
||||
'w' -> 'd'
|
||||
'x' -> 'c'
|
||||
'y' -> 'b'
|
||||
'z' -> 'a'
|
||||
else -> this.toLowerCase()
|
||||
}
|
||||
}
|
53
kotlin/atbash-cipher/src/test/kotlin/AtbashTest.kt
Normal file
53
kotlin/atbash-cipher/src/test/kotlin/AtbashTest.kt
Normal file
|
@ -0,0 +1,53 @@
|
|||
import org.junit.Test
|
||||
import org.junit.Ignore
|
||||
import org.junit.experimental.runners.Enclosed
|
||||
import org.junit.runner.RunWith
|
||||
import org.junit.runners.Parameterized
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
@RunWith(Enclosed::class)
|
||||
class AtbashTest {
|
||||
|
||||
@RunWith(Parameterized::class)
|
||||
class EncodeTest(val input: String, val expectedOutput: String) {
|
||||
|
||||
companion object {
|
||||
@JvmStatic
|
||||
@Parameterized.Parameters
|
||||
fun data() = listOf(
|
||||
arrayOf("no", "ml"),
|
||||
arrayOf("yes", "bvh"),
|
||||
arrayOf("OMG", "lnt"),
|
||||
arrayOf("mindblowingly", "nrmwy oldrm tob"),
|
||||
arrayOf("Testing, 1 2 3, testing.", "gvhgr mt123 gvhgr mt"),
|
||||
arrayOf("Truth is fiction.", "gifgs rhurx grlm"),
|
||||
arrayOf("The quick brown fox jumps over the lazy dog.", "gsvjf rxpyi ldmul cqfnk hlevi gsvoz abwlt")
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun test() {
|
||||
assertEquals(expectedOutput, Atbash.encode(input))
|
||||
}
|
||||
}
|
||||
|
||||
@RunWith(Parameterized::class)
|
||||
class DecodeTest(val input: String, val expectedOutput: String) {
|
||||
|
||||
companion object {
|
||||
@JvmStatic
|
||||
@Parameterized.Parameters
|
||||
fun data() = listOf(
|
||||
arrayOf("vcvix rhn", "exercism"),
|
||||
arrayOf("zmlyh gzxov rhlug vmzhg vkkrm thglm v", "anobstacleisoftenasteppingstone"),
|
||||
arrayOf("gvhgr mt123 gvhgr mt", "testing123testing")
|
||||
)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun test() {
|
||||
assertEquals(expectedOutput, Atbash.decode(input))
|
||||
}
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,2 @@
|
|||
#Wed Jul 19 11:16:38 EDT 2017
|
||||
gradle.version=3.5
|
|
@ -0,0 +1 @@
|
|||
|
9
kotlin/collatz-conjecture/.idea/compiler.xml
generated
Normal file
9
kotlin/collatz-conjecture/.idea/compiler.xml
generated
Normal file
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<bytecodeTargetLevel>
|
||||
<module name="collatz-conjecture_main" target="1.8" />
|
||||
<module name="collatz-conjecture_test" target="1.8" />
|
||||
</bytecodeTargetLevel>
|
||||
</component>
|
||||
</project>
|
19
kotlin/collatz-conjecture/.idea/gradle.xml
generated
Normal file
19
kotlin/collatz-conjecture/.idea/gradle.xml
generated
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="GradleSettings">
|
||||
<option name="linkedExternalProjectsSettings">
|
||||
<GradleProjectSettings>
|
||||
<option name="distributionType" value="LOCAL" />
|
||||
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="gradleHome" value="C:/Gradle/gradle-3.5" />
|
||||
<option name="gradleJvm" value="1.8" />
|
||||
<option name="modules">
|
||||
<set>
|
||||
<option value="$PROJECT_DIR$" />
|
||||
</set>
|
||||
</option>
|
||||
<option name="useAutoImport" value="true" />
|
||||
</GradleProjectSettings>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__junit_junit_4_12.xml
generated
Normal file
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__junit_junit_4_12.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: junit:junit:4.12">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/2973d150c0dc1fefe998f834810d68f278ea58ec/junit-4.12.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/a6c32b40bf3d76eca54e3c601e5d1470c86fcdfa/junit-4.12-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml
generated
Normal file
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-core:1.3">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/1dc37250fbc78e23a65a67fbbaf71d2e9cbc3c0b/hamcrest-core-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml
generated
Normal file
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains:annotations:13.0">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/5991ca87ef1fb5544943d9abc5a9a37583fabe03/annotations-13.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_1.xml
generated
Normal file
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/98e484e67f913e934559f7f55f0c94be5593f03c/kotlin-stdlib-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/a287944d92875a1f3c2161e5cddaede7720913d1/kotlin-stdlib-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_1_1.xml
generated
Normal file
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-test:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test/1.1.1/5a852a554eb4f9fb93efdffa352b7983ed595e32/kotlin-test-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test/1.1.1/4b9a869f86569edea4a07d19b9749ac835fb7207/kotlin-test-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit_1_1_1.xml
generated
Normal file
11
kotlin/collatz-conjecture/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-test-junit:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test-junit/1.1.1/a1865f59b6f72597452e5bdfefeb14d13bc31c7d/kotlin-test-junit-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test-junit/1.1.1/ed59de63c4565c708124caaa4e86562a780f9ba0/kotlin-test-junit-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
6
kotlin/collatz-conjecture/.idea/misc.xml
generated
Normal file
6
kotlin/collatz-conjecture/.idea/misc.xml
generated
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/classes" />
|
||||
</component>
|
||||
</project>
|
10
kotlin/collatz-conjecture/.idea/modules.xml
generated
Normal file
10
kotlin/collatz-conjecture/.idea/modules.xml
generated
Normal file
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/collatz-conjecture.iml" filepath="$PROJECT_DIR$/collatz-conjecture.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/collatz-conjecture_main.iml" filepath="$PROJECT_DIR$/.idea/modules/collatz-conjecture_main.iml" group="collatz-conjecture" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/collatz-conjecture_test.iml" filepath="$PROJECT_DIR$/.idea/modules/collatz-conjecture_test.iml" group="collatz-conjecture" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
39
kotlin/collatz-conjecture/.idea/modules/collatz-conjecture_main.iml
generated
Normal file
39
kotlin/collatz-conjecture/.idea/modules/collatz-conjecture_main.iml
generated
Normal file
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="collatz-conjecture:main" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="kotlin-language" name="Kotlin">
|
||||
<configuration version="3" platform="JVM 1.6" useProjectSettings="false">
|
||||
<compilerSettings />
|
||||
<compilerArguments>
|
||||
<option name="noStdlib" value="true" />
|
||||
<option name="noReflect" value="true" />
|
||||
<option name="moduleName" value="collatz-conjecture_main" />
|
||||
<option name="jvmTarget" value="1.6" />
|
||||
<option name="addCompilerBuiltIns" value="true" />
|
||||
<option name="loadBuiltInsFromDependencies" value="true" />
|
||||
<option name="languageVersion" value="1.1" />
|
||||
<option name="apiVersion" value="1.1" />
|
||||
<option name="pluginOptions">
|
||||
<array />
|
||||
</option>
|
||||
<option name="pluginClasspaths">
|
||||
<array />
|
||||
</option>
|
||||
</compilerArguments>
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||
<output url="file://$MODULE_DIR$/../../out/production/classes" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$/../../src/main">
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/kotlin" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/resources" type="java-resource" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
|
||||
</component>
|
||||
</module>
|
45
kotlin/collatz-conjecture/.idea/modules/collatz-conjecture_test.iml
generated
Normal file
45
kotlin/collatz-conjecture/.idea/modules/collatz-conjecture_test.iml
generated
Normal file
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="collatz-conjecture:test" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="kotlin-language" name="Kotlin">
|
||||
<configuration version="3" platform="JVM 1.6" useProjectSettings="false">
|
||||
<compilerSettings />
|
||||
<compilerArguments>
|
||||
<option name="noStdlib" value="true" />
|
||||
<option name="noReflect" value="true" />
|
||||
<option name="moduleName" value="collatz-conjecture_main" />
|
||||
<option name="jvmTarget" value="1.6" />
|
||||
<option name="addCompilerBuiltIns" value="true" />
|
||||
<option name="loadBuiltInsFromDependencies" value="true" />
|
||||
<option name="languageVersion" value="1.1" />
|
||||
<option name="apiVersion" value="1.1" />
|
||||
<option name="pluginOptions">
|
||||
<array />
|
||||
</option>
|
||||
<option name="pluginClasspaths">
|
||||
<array />
|
||||
</option>
|
||||
</compilerArguments>
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||
<output-test url="file://$MODULE_DIR$/../../out/test/classes" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$/../../src/test">
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/kotlin" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/resources" type="java-test-resource" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="collatz-conjecture_main" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: junit:junit:4.12" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-test-junit:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-test:1.1.1" level="project" />
|
||||
</component>
|
||||
<component name="TestModuleProperties" production-module="collatz-conjecture_main" />
|
||||
</module>
|
717
kotlin/collatz-conjecture/.idea/workspace.xml
generated
Normal file
717
kotlin/collatz-conjecture/.idea/workspace.xml
generated
Normal file
|
@ -0,0 +1,717 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="91e5a868-ecec-44f6-a5cd-41c8991a482c" name="Default" comment="" />
|
||||
<ignored path="$PROJECT_DIR$/.gradle/" />
|
||||
<ignored path="$PROJECT_DIR$/build/" />
|
||||
<ignored path="$PROJECT_DIR$/out/" />
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="TRACKING_ENABLED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="ExternalProjectsData">
|
||||
<projectState path="$PROJECT_DIR$">
|
||||
<ProjectState />
|
||||
</projectState>
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf>
|
||||
<file leaf-file-name="CollatzCalculatorTest.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/test/kotlin/CollatzCalculatorTest.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="363">
|
||||
<caret line="36" column="8" lean-forward="false" selection-start-line="36" selection-start-column="8" selection-end-line="36" selection-end-column="8" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="CollatzCalculator.kt" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/main/kotlin/CollatzCalculator.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="129">
|
||||
<caret line="3" column="28" lean-forward="false" selection-start-line="3" selection-start-column="28" selection-end-line="3" selection-end-column="28" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="README.md" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Kotlin Class" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="FindInProjectRecents">
|
||||
<findStrings>
|
||||
<find>@Ignore\n</find>
|
||||
</findStrings>
|
||||
</component>
|
||||
<component name="GradleLocalSettings">
|
||||
<option name="myGradleHomes">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="C:\Gradle\gradle-3.5" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="myGradleVersions">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="3.5" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="availableProjects">
|
||||
<map>
|
||||
<entry>
|
||||
<key>
|
||||
<ExternalProjectPojo>
|
||||
<option name="name" value="collatz-conjecture" />
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalProjectPojo>
|
||||
</key>
|
||||
<value>
|
||||
<list>
|
||||
<ExternalProjectPojo>
|
||||
<option name="name" value="collatz-conjecture" />
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalProjectPojo>
|
||||
</list>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="availableTasks">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<list>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the components produced by root project 'collatz-conjecture'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="components" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project and all projects that depend on it." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildDependents" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the sub-projects of root project 'collatz-conjecture'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="projects" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles main classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="classes" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the dependent components of components in root project 'collatz-conjecture'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependentComponents" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays all buildscript dependencies declared in root project 'collatz-conjecture'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildEnvironment" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Generates Gradle wrapper files." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="wrapper" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles test classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="testClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Generates Javadoc API documentation for the main source code." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="javadoc" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles a jar archive containing the main classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="jar" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the configuration model of root project 'collatz-conjecture'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="model" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="copyMainKotlinClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Processes main resources." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="processResources" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the tasks runnable from root project 'collatz-conjecture'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="tasks" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Initializes a new Gradle build." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="init" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="copyTestKotlinClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Runs the unit tests." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="test" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles main Java source." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileJava" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles the source set 'test'.kotlin." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileTestKotlin" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the insight into a specific dependency in root project 'collatz-conjecture'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependencyInsight" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Runs all checks." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="check" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles the outputs of this project." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="assemble" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Deletes the build directory." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="clean" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles test Java source." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileTestJava" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays all dependencies declared in root project 'collatz-conjecture'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependencies" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Processes test resources." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="processTestResources" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays a help message." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="help" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles the source set 'main'.kotlin." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileKotlin" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="build" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project and all projects it depends on." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildNeeded" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the properties of root project 'collatz-conjecture'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="properties" />
|
||||
</ExternalTaskPojo>
|
||||
</list>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="modificationStamps">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="1500477368174" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="projectBuildClasspath">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<ExternalProjectBuildClasspathPojo>
|
||||
<option name="modulesBuildClasspath">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<ExternalModuleBuildClasspathPojo>
|
||||
<option name="entries">
|
||||
<list>
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin/1.1.1/e742de8adf25f631b39f74e2d6fd00cd9cdd609e/kotlin-gradle-plugin-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin/1.1.1/5e3d99580c70b67a07cd70481943362e4b29d8d3/kotlin-gradle-plugin-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.4/f2d8698c46d1167ff24b06a840a87d91a02db891/commons-io-2.4-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.4/b1b6ea3b7e4aa4f492509a4952029cd8e48019ad/commons-io-2.4.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.6/67313d715fbf0ea4fd0bdb69217fb77f807a8ce5/commons-lang-2.6-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.6/ce1edb914c94ebc388f086c6827e8bdeec71ac2/commons-lang-2.6.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/a287944d92875a1f3c2161e5cddaede7720913d1/kotlin-stdlib-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/98e484e67f913e934559f7f55f0c94be5593f03c/kotlin-stdlib-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-android-extensions/1.1.1/2c0ad82587d187f78c4063fa7867ed3c4dfa54ca/kotlin-android-extensions-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-android-extensions/1.1.1/56cfcc61bc91638ea52d13ce90b565f50be3d6f5/kotlin-android-extensions-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin-api/1.1.1/e48aafb092d4c3ddd6927f38f9f17f7117e1ef47/kotlin-gradle-plugin-api-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin-api/1.1.1/9083de2c98801f1fe058b6280234265269c1cad0/kotlin-gradle-plugin-api-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.1.1/b84662e33f8f44d33265e964f1329ce5644af35c/kotlin-compiler-embeddable-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.1.1/d975091bb224a04b3717505a55875608642cc8d3/kotlin-compiler-embeddable-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-runner/1.1.1/764b45d92a761810b29580aeae2fac3d614f9bf/kotlin-compiler-runner-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-runner/1.1.1/cad5c437ac58f7245673a6c4fd73a656dd259b26/kotlin-compiler-runner-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-annotation-processing/1.1.1/2756d002e8d1d1aa0d5a49e7c895b87514083fab/kotlin-annotation-processing-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-annotation-processing/1.1.1/9f7312cea58b39ce82368261cd227758df78eb32/kotlin-annotation-processing-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/5991ca87ef1fb5544943d9abc5a9a37583fabe03/annotations-13.0-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar" />
|
||||
</list>
|
||||
</option>
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalModuleBuildClasspathPojo>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="name" value="collatz-conjecture" />
|
||||
<option name="projectBuildClasspath">
|
||||
<list>
|
||||
<option value="C:/Gradle/gradle-3.5/lib/ant-1.9.6.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/ant-launcher-1.9.6.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-base-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-base-services-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-cli-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-core-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-docs-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-installation-beacon-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-jvm-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-launcher-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-logging-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-messaging-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-model-core-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-model-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-open-api-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-process-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-resources-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-runtime-api-info-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-script-kotlin-0.8.0.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-tooling-api-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-ui-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-version-info-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-wrapper-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/groovy-all-2.4.10.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-announce-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-antlr-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-cache-http-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-comparison-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-init-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-code-quality-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-composite-builds-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-dependency-management-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-diagnostics-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ear-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-play-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ivy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-jacoco-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-javascript-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-jetty-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-java-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-scala-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-maven-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-osgi-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-base-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-play-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugin-development-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugin-use-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugins-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-publish-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-reporting-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-http-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-s3-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-sftp-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-scala-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-signing-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-test-kit-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-base-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-tooling-api-builders-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-workers-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/ivy-2.2.0.jar" />
|
||||
<option value="$PROJECT_DIR$/buildSrc/src/main/java" />
|
||||
<option value="$PROJECT_DIR$/buildSrc/src/main/groovy" />
|
||||
</list>
|
||||
</option>
|
||||
</ExternalProjectBuildClasspathPojo>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="externalProjectsViewState">
|
||||
<projects_view />
|
||||
</option>
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/src/test/kotlin/CollatzCalculatorTest.kt" />
|
||||
<option value="$PROJECT_DIR$/src/main/kotlin/CollatzCalculator.kt" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsGulpfileManager">
|
||||
<detection-done>true</detection-done>
|
||||
<sorting>DEFINITION_ORDER</sorting>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds" extendedState="6">
|
||||
<option name="x" value="-16" />
|
||||
<option name="y" value="-16" />
|
||||
<option name="width" value="3856" />
|
||||
<option name="height" value="2092" />
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator currentView="ProjectPane" proportions="" version="1">
|
||||
<flattenPackages />
|
||||
<showMembers />
|
||||
<showModules />
|
||||
<showLibraryContents />
|
||||
<hideEmptyPackages />
|
||||
<abbreviatePackageNames />
|
||||
<autoscrollToSource />
|
||||
<autoscrollFromSource />
|
||||
<sortByType />
|
||||
<manualOrder />
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="Scope" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
<path>
|
||||
<item name="collatz-conjecture" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="collatz-conjecture" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="collatz-conjecture" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="collatz-conjecture" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="collatz-conjecture" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="collatz-conjecture" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="collatz-conjecture" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="collatz-conjecture" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="kotlin" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="collatz-conjecture" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="collatz-conjecture" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="test" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="collatz-conjecture" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="collatz-conjecture" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="test" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="kotlin" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="Scratches" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="settings.editor.selected.configurable" value="reference.settings.project.maven.runner" />
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/../atbash-cipher" />
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager" selected="JUnit.CollatzCalculatorTest">
|
||||
<configuration name="CollatzCalculatorTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="collatz-conjecture_test" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" value="" />
|
||||
<option name="MAIN_CLASS_NAME" value="CollatzCalculatorTest" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="TEST_OBJECT" value="class" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration default="true" type="Applet" factoryName="Applet">
|
||||
<option name="WIDTH" value="400" />
|
||||
<option name="HEIGHT" value="300" />
|
||||
<option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
|
||||
<module />
|
||||
</configuration>
|
||||
<configuration default="true" type="Application" factoryName="Application">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="VM_PARAMETERS" />
|
||||
<option name="PROGRAM_PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="ENABLE_SWING_INSPECTOR" value="false" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<module name="" />
|
||||
<envs />
|
||||
</configuration>
|
||||
<configuration default="true" type="JUnit" factoryName="JUnit">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="TEST_OBJECT" value="class" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration default="true" type="Remote" factoryName="Remote">
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true" />
|
||||
<option name="SERVER_MODE" value="false" />
|
||||
<option name="SHMEM_ADDRESS" value="javadebug" />
|
||||
<option name="HOST" value="localhost" />
|
||||
<option name="PORT" value="5005" />
|
||||
</configuration>
|
||||
<configuration default="true" type="TestNG" factoryName="TestNG">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="SUITE_NAME" />
|
||||
<option name="PACKAGE_NAME" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="GROUP_NAME" />
|
||||
<option name="TEST_OBJECT" value="CLASS" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
||||
<option name="OUTPUT_DIRECTORY" />
|
||||
<option name="ANNOTATION_TYPE" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<option name="USE_DEFAULT_REPORTERS" value="false" />
|
||||
<option name="PROPERTIES_FILE" />
|
||||
<envs />
|
||||
<properties />
|
||||
<listeners />
|
||||
</configuration>
|
||||
<configuration name="<template>" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" default="true" selected="false">
|
||||
<option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
|
||||
</configuration>
|
||||
<recent_temporary>
|
||||
<list size="1">
|
||||
<item index="0" class="java.lang.String" itemvalue="JUnit.CollatzCalculatorTest" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SbtLocalSettings">
|
||||
<option name="lastUpdateTimestamp" value="1500477400580" />
|
||||
<option name="externalProjectsViewState">
|
||||
<projects_view />
|
||||
</option>
|
||||
</component>
|
||||
<component name="ShelveChangesManager" show_recycled="false">
|
||||
<option name="remove_strategy" value="false" />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="91e5a868-ecec-44f6-a5cd-41c8991a482c" name="Default" comment="" />
|
||||
<created>1500477383851</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1500477383851</updated>
|
||||
<workItem from="1500477388321" duration="404000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TestHistory">
|
||||
<history-entry file="CollatzCalculatorTest - 2017.07.19 at 11h 20m 22s.xml">
|
||||
<configuration name="CollatzCalculatorTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="CollatzCalculatorTest - 2017.07.19 at 11h 20m 46s.xml">
|
||||
<configuration name="CollatzCalculatorTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="CollatzCalculatorTest - 2017.07.19 at 11h 21m 00s.xml">
|
||||
<configuration name="CollatzCalculatorTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
</component>
|
||||
<component name="TimeTrackingManager">
|
||||
<option name="totallyTimeSpent" value="404000" />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-16" y="-16" width="3872" height="2092" extended-state="6" />
|
||||
<editor active="true" />
|
||||
<layout>
|
||||
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="SBT" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="sbt-shell-toolwindow" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Gradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
<component name="VcsContentAnnotationSettings">
|
||||
<option name="myLimit" value="2678400000" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager />
|
||||
<watches-manager />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/test/kotlin/CollatzCalculatorTest.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="363">
|
||||
<caret line="36" column="8" lean-forward="false" selection-start-line="36" selection-start-column="8" selection-end-line="36" selection-end-column="8" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/kotlin/CollatzCalculator.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="129">
|
||||
<caret line="3" column="28" lean-forward="false" selection-start-line="3" selection-start-column="28" selection-end-line="3" selection-end-column="28" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</component>
|
||||
<component name="masterDetails">
|
||||
<states>
|
||||
<state key="ProjectJDKs.UI">
|
||||
<settings>
|
||||
<last-edited>1.8</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
</states>
|
||||
</component>
|
||||
</project>
|
36
kotlin/collatz-conjecture/README.md
Normal file
36
kotlin/collatz-conjecture/README.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Collatz Conjecture
|
||||
|
||||
The Collatz Conjecture or 3x+1 problem can be summarized as follows:
|
||||
|
||||
Take any positive integer n. If n is even, divide n by 2 to get n / 2. If n is
|
||||
odd, multiply n by 3 and add 1 to get 3n + 1. Repeat the process indefinitely.
|
||||
The conjecture states that no matter which number you start with, you will
|
||||
always reach 1 eventually.
|
||||
|
||||
Given a number n, return the number of steps required to reach 1.
|
||||
|
||||
## Examples
|
||||
Starting with n = 12, the steps would be as follows:
|
||||
|
||||
0. 12
|
||||
1. 6
|
||||
2. 3
|
||||
3. 10
|
||||
4. 5
|
||||
5. 16
|
||||
6. 8
|
||||
7. 4
|
||||
8. 2
|
||||
9. 1
|
||||
|
||||
Resulting in 9 steps. So for input n = 12, the return value would be 9.
|
||||
|
||||
|
||||
|
||||
|
||||
## Source
|
||||
|
||||
An unsolved problem in mathematics named after mathematician Lothar Collatz [https://en.wikipedia.org/wiki/3x_%2B_1_problem](https://en.wikipedia.org/wiki/3x_%2B_1_problem)
|
||||
|
||||
## Submitting Incomplete Solutions
|
||||
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
28
kotlin/collatz-conjecture/build.gradle
Normal file
28
kotlin/collatz-conjecture/build.gradle
Normal file
|
@ -0,0 +1,28 @@
|
|||
buildscript {
|
||||
ext.kotlin_version = '1.1.1'
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
}
|
||||
}
|
||||
|
||||
apply plugin: 'kotlin'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
||||
|
||||
testCompile 'junit:junit:4.12'
|
||||
testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"
|
||||
}
|
||||
test {
|
||||
testLogging {
|
||||
exceptionFormat = 'full'
|
||||
events = ["passed", "failed", "skipped"]
|
||||
}
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
11001
|
13
kotlin/collatz-conjecture/collatz-conjecture.iml
Normal file
13
kotlin/collatz-conjecture/collatz-conjecture.iml
Normal file
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="collatz-conjecture" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/out" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
0
kotlin/collatz-conjecture/src/main/kotlin/.keep
Normal file
0
kotlin/collatz-conjecture/src/main/kotlin/.keep
Normal file
|
@ -0,0 +1,17 @@
|
|||
class CollatzCalculator {
|
||||
companion object {
|
||||
fun computeStepCount(inpInt: Int): Int{
|
||||
require(inpInt > 0) {"Only natural numbers are allowed"}
|
||||
var temp = inpInt
|
||||
var steps: Int = 0
|
||||
while (temp != 1){
|
||||
if (temp %2 == 0) {
|
||||
temp /= 2
|
||||
}
|
||||
else temp = temp*3 + 1
|
||||
steps++
|
||||
}
|
||||
return steps
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
import org.junit.Ignore
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.junit.rules.ExpectedException
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
/*
|
||||
* version: 1.1.0
|
||||
*/
|
||||
class CollatzCalculatorTest {
|
||||
|
||||
@Rule
|
||||
@JvmField
|
||||
var expectedException: ExpectedException = ExpectedException.none()
|
||||
|
||||
@Test
|
||||
fun testZeroStepsRequiredWhenStartingFrom1() {
|
||||
assertEquals(0, CollatzCalculator.computeStepCount(1))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testCorrectNumberOfStepsWhenAllStepsAreDivisions() {
|
||||
assertEquals(4, CollatzCalculator.computeStepCount(16))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testCorrectNumberOfStepsWhenBothStepTypesAreNeeded() {
|
||||
assertEquals(9, CollatzCalculator.computeStepCount(12))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testAVeryLargeInput() {
|
||||
assertEquals(152, CollatzCalculator.computeStepCount(1000000))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testZeroIsConsideredInvalidInput() {
|
||||
expectedException.expect(IllegalArgumentException::class.java)
|
||||
expectedException.expectMessage("Only natural numbers are allowed")
|
||||
|
||||
CollatzCalculator.computeStepCount(0)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testNegativeIntegerIsConsideredInvalidInput() {
|
||||
expectedException.expect(IllegalArgumentException::class.java)
|
||||
expectedException.expectMessage("Only natural numbers are allowed")
|
||||
|
||||
CollatzCalculator.computeStepCount(-15)
|
||||
}
|
||||
|
||||
}
|
BIN
kotlin/grains/.gradle/3.5/file-changes/last-build.bin
Normal file
BIN
kotlin/grains/.gradle/3.5/file-changes/last-build.bin
Normal file
Binary file not shown.
BIN
kotlin/grains/.gradle/3.5/taskHistory/taskHistory.lock
Normal file
BIN
kotlin/grains/.gradle/3.5/taskHistory/taskHistory.lock
Normal file
Binary file not shown.
0
kotlin/grains/.gradle/buildOutputCleanup/built.bin
Normal file
0
kotlin/grains/.gradle/buildOutputCleanup/built.bin
Normal file
|
@ -0,0 +1,2 @@
|
|||
#Tue Jul 18 17:57:08 EDT 2017
|
||||
gradle.version=3.5
|
|
@ -0,0 +1 @@
|
|||
|
9
kotlin/grains/.idea/compiler.xml
generated
Normal file
9
kotlin/grains/.idea/compiler.xml
generated
Normal file
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<bytecodeTargetLevel>
|
||||
<module name="grains_main" target="1.8" />
|
||||
<module name="grains_test" target="1.8" />
|
||||
</bytecodeTargetLevel>
|
||||
</component>
|
||||
</project>
|
19
kotlin/grains/.idea/gradle.xml
generated
Normal file
19
kotlin/grains/.idea/gradle.xml
generated
Normal file
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="GradleSettings">
|
||||
<option name="linkedExternalProjectsSettings">
|
||||
<GradleProjectSettings>
|
||||
<option name="distributionType" value="LOCAL" />
|
||||
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="gradleHome" value="C:/Gradle/gradle-3.5" />
|
||||
<option name="gradleJvm" value="1.8" />
|
||||
<option name="modules">
|
||||
<set>
|
||||
<option value="$PROJECT_DIR$" />
|
||||
</set>
|
||||
</option>
|
||||
<option name="useAutoImport" value="true" />
|
||||
</GradleProjectSettings>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
11
kotlin/grains/.idea/libraries/Gradle__junit_junit_4_12.xml
generated
Normal file
11
kotlin/grains/.idea/libraries/Gradle__junit_junit_4_12.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: junit:junit:4.12">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/2973d150c0dc1fefe998f834810d68f278ea58ec/junit-4.12.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/a6c32b40bf3d76eca54e3c601e5d1470c86fcdfa/junit-4.12-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/grains/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml
generated
Normal file
11
kotlin/grains/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-core:1.3">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/1dc37250fbc78e23a65a67fbbaf71d2e9cbc3c0b/hamcrest-core-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/grains/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml
generated
Normal file
11
kotlin/grains/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains:annotations:13.0">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/5991ca87ef1fb5544943d9abc5a9a37583fabe03/annotations-13.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/grains/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_1.xml
generated
Normal file
11
kotlin/grains/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/98e484e67f913e934559f7f55f0c94be5593f03c/kotlin-stdlib-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/a287944d92875a1f3c2161e5cddaede7720913d1/kotlin-stdlib-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/grains/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_1_1.xml
generated
Normal file
11
kotlin/grains/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-test:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test/1.1.1/5a852a554eb4f9fb93efdffa352b7983ed595e32/kotlin-test-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test/1.1.1/4b9a869f86569edea4a07d19b9749ac835fb7207/kotlin-test-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
kotlin/grains/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit_1_1_1.xml
generated
Normal file
11
kotlin/grains/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit_1_1_1.xml
generated
Normal file
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.jetbrains.kotlin:kotlin-test-junit:1.1.1">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test-junit/1.1.1/a1865f59b6f72597452e5bdfefeb14d13bc31c7d/kotlin-test-junit-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test-junit/1.1.1/ed59de63c4565c708124caaa4e86562a780f9ba0/kotlin-test-junit-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
6
kotlin/grains/.idea/misc.xml
generated
Normal file
6
kotlin/grains/.idea/misc.xml
generated
Normal file
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/classes" />
|
||||
</component>
|
||||
</project>
|
10
kotlin/grains/.idea/modules.xml
generated
Normal file
10
kotlin/grains/.idea/modules.xml
generated
Normal file
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/grains.iml" filepath="$PROJECT_DIR$/grains.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/grains_main.iml" filepath="$PROJECT_DIR$/.idea/modules/grains_main.iml" group="grains" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/grains_test.iml" filepath="$PROJECT_DIR$/.idea/modules/grains_test.iml" group="grains" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
39
kotlin/grains/.idea/modules/grains_main.iml
generated
Normal file
39
kotlin/grains/.idea/modules/grains_main.iml
generated
Normal file
|
@ -0,0 +1,39 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="grains:main" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="kotlin-language" name="Kotlin">
|
||||
<configuration version="3" platform="JVM 1.6" useProjectSettings="false">
|
||||
<compilerSettings />
|
||||
<compilerArguments>
|
||||
<option name="noStdlib" value="true" />
|
||||
<option name="noReflect" value="true" />
|
||||
<option name="moduleName" value="grains_main" />
|
||||
<option name="jvmTarget" value="1.6" />
|
||||
<option name="addCompilerBuiltIns" value="true" />
|
||||
<option name="loadBuiltInsFromDependencies" value="true" />
|
||||
<option name="languageVersion" value="1.1" />
|
||||
<option name="apiVersion" value="1.1" />
|
||||
<option name="pluginOptions">
|
||||
<array />
|
||||
</option>
|
||||
<option name="pluginClasspaths">
|
||||
<array />
|
||||
</option>
|
||||
</compilerArguments>
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||
<output url="file://$MODULE_DIR$/../../out/production/classes" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$/../../src/main">
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/kotlin" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/main/resources" type="java-resource" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
|
||||
</component>
|
||||
</module>
|
45
kotlin/grains/.idea/modules/grains_test.iml
generated
Normal file
45
kotlin/grains/.idea/modules/grains_test.iml
generated
Normal file
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="grains:test" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" external.system.module.group="" external.system.module.type="sourceSet" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="kotlin-language" name="Kotlin">
|
||||
<configuration version="3" platform="JVM 1.6" useProjectSettings="false">
|
||||
<compilerSettings />
|
||||
<compilerArguments>
|
||||
<option name="noStdlib" value="true" />
|
||||
<option name="noReflect" value="true" />
|
||||
<option name="moduleName" value="grains_main" />
|
||||
<option name="jvmTarget" value="1.6" />
|
||||
<option name="addCompilerBuiltIns" value="true" />
|
||||
<option name="loadBuiltInsFromDependencies" value="true" />
|
||||
<option name="languageVersion" value="1.1" />
|
||||
<option name="apiVersion" value="1.1" />
|
||||
<option name="pluginOptions">
|
||||
<array />
|
||||
</option>
|
||||
<option name="pluginClasspaths">
|
||||
<array />
|
||||
</option>
|
||||
</compilerArguments>
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||
<output-test url="file://$MODULE_DIR$/../../out/test/classes" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$/../../src/test">
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/kotlin" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/../../src/test/resources" type="java-test-resource" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module" module-name="grains_main" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: junit:junit:4.12" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-test-junit:1.1.1" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||
<orderEntry type="library" name="Gradle: org.jetbrains.kotlin:kotlin-test:1.1.1" level="project" />
|
||||
</component>
|
||||
<component name="TestModuleProperties" production-module="grains_main" />
|
||||
</module>
|
720
kotlin/grains/.idea/workspace.xml
generated
Normal file
720
kotlin/grains/.idea/workspace.xml
generated
Normal file
|
@ -0,0 +1,720 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="6f95deb7-4894-41b3-b89f-8f8ef100d91c" name="Default" comment="" />
|
||||
<ignored path="$PROJECT_DIR$/.gradle/" />
|
||||
<ignored path="$PROJECT_DIR$/build/" />
|
||||
<ignored path="$PROJECT_DIR$/out/" />
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="TRACKING_ENABLED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="ExternalProjectsData">
|
||||
<projectState path="$PROJECT_DIR$">
|
||||
<ProjectState />
|
||||
</projectState>
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf>
|
||||
<file leaf-file-name="BoardTest.kt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/test/kotlin/BoardTest.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="315">
|
||||
<caret line="79" column="95" lean-forward="false" selection-start-line="79" selection-start-column="41" selection-end-line="79" selection-end-column="95" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="Board.kt" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/main/kotlin/Board.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="688">
|
||||
<caret line="16" column="1" lean-forward="true" selection-start-line="16" selection-start-column="1" selection-end-line="16" selection-end-column="1" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="README.md" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Kotlin Object" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="FindInProjectRecents">
|
||||
<findStrings>
|
||||
<find>@ignore</find>
|
||||
</findStrings>
|
||||
</component>
|
||||
<component name="GradleLocalSettings">
|
||||
<option name="myGradleHomes">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="C:\Gradle\gradle-3.5" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="myGradleVersions">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="3.5" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="availableProjects">
|
||||
<map>
|
||||
<entry>
|
||||
<key>
|
||||
<ExternalProjectPojo>
|
||||
<option name="name" value="grains" />
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalProjectPojo>
|
||||
</key>
|
||||
<value>
|
||||
<list>
|
||||
<ExternalProjectPojo>
|
||||
<option name="name" value="grains" />
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalProjectPojo>
|
||||
</list>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="availableTasks">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<list>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the components produced by root project 'grains'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="components" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project and all projects that depend on it." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildDependents" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the sub-projects of root project 'grains'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="projects" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles main classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="classes" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the dependent components of components in root project 'grains'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependentComponents" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays all buildscript dependencies declared in root project 'grains'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildEnvironment" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Generates Gradle wrapper files." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="wrapper" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles test classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="testClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Generates Javadoc API documentation for the main source code." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="javadoc" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles a jar archive containing the main classes." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="jar" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the configuration model of root project 'grains'. [incubating]" />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="model" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="copyMainKotlinClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Processes main resources." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="processResources" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the tasks runnable from root project 'grains'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="tasks" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Initializes a new Gradle build." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="init" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="copyTestKotlinClasses" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Runs the unit tests." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="test" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles main Java source." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileJava" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles the source set 'test'.kotlin." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileTestKotlin" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the insight into a specific dependency in root project 'grains'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependencyInsight" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Runs all checks." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="check" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles the outputs of this project." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="assemble" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Deletes the build directory." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="clean" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles test Java source." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileTestJava" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays all dependencies declared in root project 'grains'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="dependencies" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Processes test resources." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="processTestResources" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays a help message." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="help" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Compiles the source set 'main'.kotlin." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="compileKotlin" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="build" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Assembles and tests this project and all projects it depends on." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="buildNeeded" />
|
||||
</ExternalTaskPojo>
|
||||
<ExternalTaskPojo>
|
||||
<option name="description" value="Displays the properties of root project 'grains'." />
|
||||
<option name="linkedExternalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="name" value="properties" />
|
||||
</ExternalTaskPojo>
|
||||
</list>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="modificationStamps">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$" value="1500414756221" />
|
||||
</map>
|
||||
</option>
|
||||
<option name="projectBuildClasspath">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<ExternalProjectBuildClasspathPojo>
|
||||
<option name="modulesBuildClasspath">
|
||||
<map>
|
||||
<entry key="$PROJECT_DIR$">
|
||||
<value>
|
||||
<ExternalModuleBuildClasspathPojo>
|
||||
<option name="entries">
|
||||
<list>
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin/1.1.1/e742de8adf25f631b39f74e2d6fd00cd9cdd609e/kotlin-gradle-plugin-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin/1.1.1/5e3d99580c70b67a07cd70481943362e4b29d8d3/kotlin-gradle-plugin-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.4/f2d8698c46d1167ff24b06a840a87d91a02db891/commons-io-2.4-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-io/commons-io/2.4/b1b6ea3b7e4aa4f492509a4952029cd8e48019ad/commons-io-2.4.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.6/67313d715fbf0ea4fd0bdb69217fb77f807a8ce5/commons-lang-2.6-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/commons-lang/commons-lang/2.6/ce1edb914c94ebc388f086c6827e8bdeec71ac2/commons-lang-2.6.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/a287944d92875a1f3c2161e5cddaede7720913d1/kotlin-stdlib-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.1.1/98e484e67f913e934559f7f55f0c94be5593f03c/kotlin-stdlib-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-android-extensions/1.1.1/2c0ad82587d187f78c4063fa7867ed3c4dfa54ca/kotlin-android-extensions-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-android-extensions/1.1.1/56cfcc61bc91638ea52d13ce90b565f50be3d6f5/kotlin-android-extensions-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin-api/1.1.1/e48aafb092d4c3ddd6927f38f9f17f7117e1ef47/kotlin-gradle-plugin-api-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-gradle-plugin-api/1.1.1/9083de2c98801f1fe058b6280234265269c1cad0/kotlin-gradle-plugin-api-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.1.1/b84662e33f8f44d33265e964f1329ce5644af35c/kotlin-compiler-embeddable-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-embeddable/1.1.1/d975091bb224a04b3717505a55875608642cc8d3/kotlin-compiler-embeddable-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-runner/1.1.1/764b45d92a761810b29580aeae2fac3d614f9bf/kotlin-compiler-runner-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-compiler-runner/1.1.1/cad5c437ac58f7245673a6c4fd73a656dd259b26/kotlin-compiler-runner-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-annotation-processing/1.1.1/2756d002e8d1d1aa0d5a49e7c895b87514083fab/kotlin-annotation-processing-1.1.1-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-annotation-processing/1.1.1/9f7312cea58b39ce82368261cd227758df78eb32/kotlin-annotation-processing-1.1.1.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/5991ca87ef1fb5544943d9abc5a9a37583fabe03/annotations-13.0-sources.jar" />
|
||||
<option value="$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar" />
|
||||
</list>
|
||||
</option>
|
||||
<option name="path" value="$PROJECT_DIR$" />
|
||||
</ExternalModuleBuildClasspathPojo>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="name" value="grains" />
|
||||
<option name="projectBuildClasspath">
|
||||
<list>
|
||||
<option value="C:/Gradle/gradle-3.5/lib/ant-1.9.6.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/ant-launcher-1.9.6.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-base-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-base-services-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-cli-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-core-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-docs-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-installation-beacon-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-jvm-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-launcher-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-logging-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-messaging-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-model-core-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-model-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-open-api-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-process-services-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-resources-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-runtime-api-info-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-script-kotlin-0.8.0.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-tooling-api-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-ui-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-version-info-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/gradle-wrapper-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/groovy-all-2.4.10.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-announce-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-antlr-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-cache-http-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-comparison-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-build-init-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-code-quality-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-composite-builds-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-dependency-management-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-diagnostics-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ear-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ide-play-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-ivy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-jacoco-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-javascript-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-jetty-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-groovy-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-java-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-language-scala-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-maven-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-osgi-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-base-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-platform-play-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugin-development-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugin-use-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-plugins-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-publish-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-reporting-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-http-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-s3-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-resources-sftp-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-scala-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-signing-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-test-kit-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-base-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-jvm-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-testing-native-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-tooling-api-builders-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/gradle-workers-3.5.jar" />
|
||||
<option value="C:/Gradle/gradle-3.5/lib/plugins/ivy-2.2.0.jar" />
|
||||
<option value="$PROJECT_DIR$/buildSrc/src/main/java" />
|
||||
<option value="$PROJECT_DIR$/buildSrc/src/main/groovy" />
|
||||
</list>
|
||||
</option>
|
||||
</ExternalProjectBuildClasspathPojo>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="externalProjectsViewState">
|
||||
<projects_view />
|
||||
</option>
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/src/test/kotlin/BoardTest.kt" />
|
||||
<option value="$PROJECT_DIR$/src/main/kotlin/Board.kt" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
|
||||
<component name="JsGulpfileManager">
|
||||
<detection-done>true</detection-done>
|
||||
<sorting>DEFINITION_ORDER</sorting>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds" extendedState="6">
|
||||
<option name="x" value="-16" />
|
||||
<option name="y" value="-16" />
|
||||
<option name="width" value="3856" />
|
||||
<option name="height" value="2092" />
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator currentView="ProjectPane" proportions="" version="1">
|
||||
<flattenPackages />
|
||||
<showMembers />
|
||||
<showModules />
|
||||
<showLibraryContents />
|
||||
<hideEmptyPackages />
|
||||
<abbreviatePackageNames />
|
||||
<autoscrollToSource />
|
||||
<autoscrollFromSource />
|
||||
<sortByType />
|
||||
<manualOrder />
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
<path>
|
||||
<item name="grains" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="grains" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="grains" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="grains" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="grains" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="grains" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="grains" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="grains" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="kotlin" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="grains" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="grains" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="test" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="grains" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="grains" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="src" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="test" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
|
||||
<item name="kotlin" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="Scope" />
|
||||
<pane id="Scratches" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="settings.editor.selected.configurable" value="reference.settings.project.maven.runner" />
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/../sieve" />
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager" selected="JUnit.BoardTest">
|
||||
<configuration name="BoardTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="grains_test" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" value="" />
|
||||
<option name="MAIN_CLASS_NAME" value="BoardTest" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="TEST_OBJECT" value="class" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration default="true" type="Applet" factoryName="Applet">
|
||||
<option name="WIDTH" value="400" />
|
||||
<option name="HEIGHT" value="300" />
|
||||
<option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
|
||||
<module />
|
||||
</configuration>
|
||||
<configuration default="true" type="Application" factoryName="Application">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="VM_PARAMETERS" />
|
||||
<option name="PROGRAM_PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="ENABLE_SWING_INSPECTOR" value="false" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<module name="" />
|
||||
<envs />
|
||||
</configuration>
|
||||
<configuration default="true" type="JUnit" factoryName="JUnit">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="TEST_OBJECT" value="class" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration default="true" type="Remote" factoryName="Remote">
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true" />
|
||||
<option name="SERVER_MODE" value="false" />
|
||||
<option name="SHMEM_ADDRESS" value="javadebug" />
|
||||
<option name="HOST" value="localhost" />
|
||||
<option name="PORT" value="5005" />
|
||||
</configuration>
|
||||
<configuration default="true" type="TestNG" factoryName="TestNG">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="SUITE_NAME" />
|
||||
<option name="PACKAGE_NAME" />
|
||||
<option name="MAIN_CLASS_NAME" />
|
||||
<option name="METHOD_NAME" />
|
||||
<option name="GROUP_NAME" />
|
||||
<option name="TEST_OBJECT" value="CLASS" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
||||
<option name="OUTPUT_DIRECTORY" />
|
||||
<option name="ANNOTATION_TYPE" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<option name="USE_DEFAULT_REPORTERS" value="false" />
|
||||
<option name="PROPERTIES_FILE" />
|
||||
<envs />
|
||||
<properties />
|
||||
<listeners />
|
||||
</configuration>
|
||||
<configuration name="<template>" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" default="true" selected="false">
|
||||
<option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
|
||||
</configuration>
|
||||
<recent_temporary>
|
||||
<list size="1">
|
||||
<item index="0" class="java.lang.String" itemvalue="JUnit.BoardTest" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SbtLocalSettings">
|
||||
<option name="lastUpdateTimestamp" value="1500415030490" />
|
||||
<option name="externalProjectsViewState">
|
||||
<projects_view />
|
||||
</option>
|
||||
</component>
|
||||
<component name="ShelveChangesManager" show_recycled="false">
|
||||
<option name="remove_strategy" value="false" />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="6f95deb7-4894-41b3-b89f-8f8ef100d91c" name="Default" comment="" />
|
||||
<created>1500415016510</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1500415016510</updated>
|
||||
<workItem from="1500415021876" duration="457000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TestHistory">
|
||||
<history-entry file="BoardTest - 2017.07.18 at 18h 01m 40s.xml">
|
||||
<configuration name="BoardTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="BoardTest - 2017.07.18 at 18h 01m 53s.xml">
|
||||
<configuration name="BoardTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="BoardTest - 2017.07.18 at 18h 02m 21s.xml">
|
||||
<configuration name="BoardTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="BoardTest - 2017.07.18 at 18h 02m 59s.xml">
|
||||
<configuration name="BoardTest" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
</component>
|
||||
<component name="TimeTrackingManager">
|
||||
<option name="totallyTimeSpent" value="457000" />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-16" y="-16" width="3872" height="2092" extended-state="6" />
|
||||
<editor active="true" />
|
||||
<layout>
|
||||
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="SBT" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="sbt-shell-toolwindow" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Gradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
<component name="VcsContentAnnotationSettings">
|
||||
<option name="myLimit" value="2678400000" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager />
|
||||
<watches-manager />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/README.md">
|
||||
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
||||
<state split_layout="SPLIT">
|
||||
<first_editor relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</first_editor>
|
||||
<second_editor />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/test/kotlin/BoardTest.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="315">
|
||||
<caret line="79" column="95" lean-forward="false" selection-start-line="79" selection-start-column="41" selection-end-line="79" selection-end-column="95" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/main/kotlin/Board.kt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="688">
|
||||
<caret line="16" column="1" lean-forward="true" selection-start-line="16" selection-start-column="1" selection-end-line="16" selection-end-column="1" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</component>
|
||||
<component name="masterDetails">
|
||||
<states>
|
||||
<state key="ProjectJDKs.UI">
|
||||
<settings>
|
||||
<last-edited>1.8</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
</states>
|
||||
</component>
|
||||
</project>
|
36
kotlin/grains/README.md
Normal file
36
kotlin/grains/README.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
# Grains
|
||||
|
||||
Calculate the number of grains of wheat on a chessboard given that the number
|
||||
on each square doubles.
|
||||
|
||||
There once was a wise servant who saved the life of a prince. The king
|
||||
promised to pay whatever the servant could dream up. Knowing that the
|
||||
king loved chess, the servant told the king he would like to have grains
|
||||
of wheat. One grain on the first square of a chess board. Two grains on
|
||||
the next. Four on the third, and so on.
|
||||
|
||||
There are 64 squares on a chessboard.
|
||||
|
||||
Write code that shows:
|
||||
- how many grains were on each square, and
|
||||
- the total number of grains
|
||||
|
||||
|
||||
## For bonus points
|
||||
|
||||
Did you get the tests passing and the code clean? If you want to, these
|
||||
are some additional things you could try:
|
||||
|
||||
- Optimize for speed.
|
||||
- Optimize for readability.
|
||||
|
||||
Then please share your thoughts in a comment on the submission. Did this
|
||||
experiment make the code better? Worse? Did you learn anything from it?
|
||||
|
||||
## Source
|
||||
|
||||
JavaRanch Cattle Drive, exercise 6 [http://www.javaranch.com/grains.jsp](http://www.javaranch.com/grains.jsp)
|
||||
|
||||
## Submitting Incomplete Solutions
|
||||
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
||||
|
28
kotlin/grains/build.gradle
Normal file
28
kotlin/grains/build.gradle
Normal file
|
@ -0,0 +1,28 @@
|
|||
buildscript {
|
||||
ext.kotlin_version = '1.1.1'
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
}
|
||||
}
|
||||
|
||||
apply plugin: 'kotlin'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
||||
|
||||
testCompile 'junit:junit:4.12'
|
||||
testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"
|
||||
}
|
||||
test {
|
||||
testLogging {
|
||||
exceptionFormat = 'full'
|
||||
events = ["passed", "failed", "skipped"]
|
||||
}
|
||||
}
|
1
kotlin/grains/build/kotlin-build/caches/version.txt
Normal file
1
kotlin/grains/build/kotlin-build/caches/version.txt
Normal file
|
@ -0,0 +1 @@
|
|||
11001
|
13
kotlin/grains/grains.iml
Normal file
13
kotlin/grains/grains.iml
Normal file
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="grains" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/out" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
BIN
kotlin/grains/out/production/classes/Board.class
Normal file
BIN
kotlin/grains/out/production/classes/Board.class
Normal file
Binary file not shown.
BIN
kotlin/grains/out/test/classes/BoardTest.class
Normal file
BIN
kotlin/grains/out/test/classes/BoardTest.class
Normal file
Binary file not shown.
0
kotlin/grains/src/main/kotlin/.keep
Normal file
0
kotlin/grains/src/main/kotlin/.keep
Normal file
17
kotlin/grains/src/main/kotlin/Board.kt
Normal file
17
kotlin/grains/src/main/kotlin/Board.kt
Normal file
|
@ -0,0 +1,17 @@
|
|||
import java.math.BigInteger
|
||||
|
||||
object Board {
|
||||
fun getGrainCountForSquare(square: Int):BigInteger{
|
||||
require(square < 65 && square > 0) {"Only integers between 1 and 64 (inclusive) are allowed"}
|
||||
return BigInteger("2").pow(square - 1)
|
||||
}
|
||||
|
||||
fun getTotalGrainCount(): BigInteger{
|
||||
var returnVal: BigInteger = BigInteger.ZERO
|
||||
|
||||
for (i in 1..64){
|
||||
returnVal += getGrainCountForSquare(i)
|
||||
}
|
||||
return returnVal
|
||||
}
|
||||
}
|
91
kotlin/grains/src/test/kotlin/BoardTest.kt
Normal file
91
kotlin/grains/src/test/kotlin/BoardTest.kt
Normal file
|
@ -0,0 +1,91 @@
|
|||
import org.junit.Ignore
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.junit.rules.ExpectedException
|
||||
import java.math.BigInteger
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
/*
|
||||
* version: 1.0.0
|
||||
*/
|
||||
class BoardTest {
|
||||
|
||||
@Rule
|
||||
@JvmField
|
||||
var expectedException: ExpectedException = ExpectedException.none()
|
||||
|
||||
@Test
|
||||
fun testSquare1ContainsCorrectNumberOfGrains() {
|
||||
assertEquals(BigInteger.ONE, Board.getGrainCountForSquare(1))
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testSquare2ContainsCorrectNumberOfGrains() {
|
||||
assertEquals(BigInteger.valueOf(2), Board.getGrainCountForSquare(2))
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testSquare3ContainsCorrectNumberOfGrains() {
|
||||
assertEquals(BigInteger.valueOf(4), Board.getGrainCountForSquare(3))
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testSquare4ContainsCorrectNumberOfGrains() {
|
||||
assertEquals(BigInteger.valueOf(8), Board.getGrainCountForSquare(4))
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testSquare16ContainsCorrectNumberOfGrains() {
|
||||
assertEquals(BigInteger.valueOf(32768), Board.getGrainCountForSquare(16))
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testSquare32ContainsCorrectNumberOfGrains() {
|
||||
assertEquals(BigInteger.valueOf(2147483648), Board.getGrainCountForSquare(32))
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testSquare64ContainsCorrectNumberOfGrains() {
|
||||
assertEquals(BigInteger("9223372036854775808"), Board.getGrainCountForSquare(64))
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testSquare0IsInvalid() {
|
||||
expectedException.expect(IllegalArgumentException::class.java)
|
||||
expectedException.expectMessage("Only integers between 1 and 64 (inclusive) are allowed")
|
||||
|
||||
Board.getGrainCountForSquare(0)
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testNegativeSquareIsInvalid() {
|
||||
expectedException.expect(IllegalArgumentException::class.java)
|
||||
expectedException.expectMessage("Only integers between 1 and 64 (inclusive) are allowed")
|
||||
|
||||
Board.getGrainCountForSquare(-1)
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testSquareGreaterThan64IsInvalid() {
|
||||
expectedException.expect(IllegalArgumentException::class.java)
|
||||
expectedException.expectMessage("Only integers between 1 and 64 (inclusive) are allowed")
|
||||
|
||||
Board.getGrainCountForSquare(65)
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
fun testBoardContainsCorrectNumberOfGrains() {
|
||||
assertEquals(BigInteger("18446744073709551615"), Board.getTotalGrainCount())
|
||||
}
|
||||
|
||||
}
|
50
kotlin/hello-world/GETTING_STARTED.md
Normal file
50
kotlin/hello-world/GETTING_STARTED.md
Normal file
|
@ -0,0 +1,50 @@
|
|||
----
|
||||
# Quick Start Guide
|
||||
|
||||
This guide picks-up where [Running the Tests (in Kotlin)](http://exercism.io/languages/kotlin/tests)
|
||||
left off. If you haven't reviewed those instructions, do so now.
|
||||
|
||||
Need more information? A **step-by-step tutorial** is available in this directory at TUTORIAL.md or you can read
|
||||
the [HTML version](https://github.com/exercism/kotlin/blob/master/exercises/hello-world/TUTORIAL.md).
|
||||
|
||||
The following instructions work equally well on Windows, Mac OS X and Linux.
|
||||
|
||||
## Solve "Hello World"
|
||||
|
||||
Try writing a solution that passes one test at a time, running Gradle each time:
|
||||
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
```
|
||||
|
||||
## Iterate through the tests
|
||||
|
||||
After your first test passes, remove the `@Ignore` from the next test, and iterate on your solution,
|
||||
testing after each change.
|
||||
|
||||
## All the tests pass? Submit your solution!
|
||||
|
||||
With a working solution that we've reviewed, we're ready to submit it to
|
||||
exercism.io.
|
||||
|
||||
```
|
||||
$ exercism submit src/main/kotlin/HelloWorld.kt
|
||||
```
|
||||
|
||||
## Next Steps
|
||||
|
||||
From here, there are a number of paths you can take.
|
||||
|
||||
1. Move on to the next exercise
|
||||
2. Review (and comment on) others' submissions to this exercise
|
||||
3. Submit another iteration
|
||||
4. Contribute to Exercism
|
||||
|
||||
|
||||
We sincerely hope you learn and enjoy being part of this community. If at any time you need assistance
|
||||
do not hesitate to ask for help:
|
||||
|
||||
http://exercism.io/languages/kotlin/help
|
||||
|
||||
Cheers!
|
23
kotlin/hello-world/README.md
Normal file
23
kotlin/hello-world/README.md
Normal file
|
@ -0,0 +1,23 @@
|
|||
# Hello World
|
||||
|
||||
The classical introductory exercise. Just say "Hello, World!".
|
||||
|
||||
["Hello, World!"](http://en.wikipedia.org/wiki/%22Hello,_world!%22_program) is
|
||||
the traditional first program for beginning programming in a new language
|
||||
or environment.
|
||||
|
||||
The objectives are simple:
|
||||
|
||||
- Write a function that returns the string "Hello, World!".
|
||||
- Run the test suite and make sure that it succeeds.
|
||||
- Submit your solution and check it at the website.
|
||||
|
||||
If everything goes well, you will be ready to fetch your first real exercise.
|
||||
|
||||
## Source
|
||||
|
||||
This is an exercise to introduce users to using Exercism [http://en.wikipedia.org/wiki/%22Hello,_world!%22_program](http://en.wikipedia.org/wiki/%22Hello,_world!%22_program)
|
||||
|
||||
## Submitting Incomplete Solutions
|
||||
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
||||
|
692
kotlin/hello-world/TUTORIAL.md
Normal file
692
kotlin/hello-world/TUTORIAL.md
Normal file
|
@ -0,0 +1,692 @@
|
|||
NOTE: You can also view the HTML version of this file here:
|
||||
https://github.com/exercism/kotlin/blob/master/exercises/hello-world/TUTORIAL.md
|
||||
|
||||
* [Solving "Hello, World!"](#solving-hello-world)
|
||||
* [Reading Gradle output](#reading-gradle-output)
|
||||
* [Fixing the first failing test](#fixing-the-first-failing-test)
|
||||
* [Enabling and fixing the second test](#enabling-and-fixing-the-second-test)
|
||||
* [Enabling and fixing the third test](#enabling-and-fixing-the-third-test)
|
||||
* [Enabling the last test](#enabling-the-last-test)
|
||||
* [Refactoring](#refactoring)
|
||||
* [Submitting your first iteration](#submitting-your-first-iteration)
|
||||
* [Next Steps](#next-steps)
|
||||
* [Review (and comment on) others' submissions to this exercise](#review-and-comment-on-others-submissions-to-this-exercise)
|
||||
* [Extend an exercise](#extend-an-exercise)
|
||||
* [Contribute to Exercism](#contribute-to-exercism)
|
||||
|
||||
----
|
||||
|
||||
# Solving "Hello, World!"
|
||||
|
||||
Welcome to the first exercise on the Kotlin track!
|
||||
|
||||
This is a step-by-step guide to solving this exercise.
|
||||
|
||||
Each exercise comes with a set of tests. The first pass through the
|
||||
exercise is about getting all of the tests to pass, one at a time.
|
||||
|
||||
If you have not installed the Java Development Kit and Gradle, you must do
|
||||
so now. For help with this, see: http://exercism.io/languages/kotlin/installing
|
||||
|
||||
----
|
||||
|
||||
This guide picks-up where [Running the Tests (in Kotlin)](http://exercism.io/languages/kotlin/tests)
|
||||
left off. If you haven't reviewed those instructions, do so now.
|
||||
|
||||
The following instructions work equally well on Windows, Mac OS X and Linux.
|
||||
|
||||
## Reading Gradle output
|
||||
|
||||
Use Gradle to run the tests:
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
```
|
||||
|
||||
This command does a lot and displays a bunch of stuff. Let's break it down...
|
||||
|
||||
```
|
||||
:compileKotlin
|
||||
w: /Users/jtigger/exercism/exercises/kotlin/hello-world/src/main/kotlin/HelloWorld.kt: (1, 11): Parameter 'name' is never used
|
||||
:compileJava UP-TO-DATE
|
||||
:copyMainKotlinClasses
|
||||
:processResources UP-TO-DATE
|
||||
:classes UP-TO-DATE
|
||||
```
|
||||
|
||||
Each line that begins with a colon (like `:compileKotlin`) is Gradle telling
|
||||
us that it's starting that task. The first five tasks are about compiling
|
||||
the source code of our *solution*. We've done you a favor and included just
|
||||
enough code for the solution that it compiles.
|
||||
|
||||
When a task is successful, it generally does not output anything. This is
|
||||
why `:copyMainKotlinClasses` does not produce any additional output.
|
||||
|
||||
A task may succeed but warn of a potential problem. This is what we see from
|
||||
`:compileKotlin`. The Kotlin compiler tells us that on line 1, 11 characters in
|
||||
of the `HelloWorld.kt` file, there is a parameter called `name` that was
|
||||
declared but never used. Usually, warnings _are_ helpful and should be heeded.
|
||||
We'll address this warning soon enough, but we're okay for now.
|
||||
|
||||
The next five tasks are about compiling source code of the *tests*.
|
||||
|
||||
```
|
||||
:compileTestKotlin
|
||||
:compileTestJava UP-TO-DATE
|
||||
:copyTestKotlinClasses
|
||||
:processTestResources UP-TO-DATE
|
||||
:testClasses UP-TO-DATE
|
||||
```
|
||||
|
||||
... with both sets of source code successfully compiled, Gradle turns to
|
||||
running the task you asked it to: executing the tests against the solution.
|
||||
|
||||
```
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName SKIPPED
|
||||
|
||||
HelloWorldTest > helloBlankName SKIPPED
|
||||
|
||||
HelloWorldTest > helloNoName FAILED
|
||||
org.junit.ComparisonFailure: expected:<[Hello, World!]> but was:<[]>
|
||||
at org.junit.Assert.assertEquals(Assert.java:115)
|
||||
at org.junit.Assert.assertEquals(Assert.java:144)
|
||||
at HelloWorldTest.helloNoName(HelloWorldTest.kt:10)
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName SKIPPED
|
||||
|
||||
4 tests completed, 1 failed, 3 skipped
|
||||
:test FAILED
|
||||
|
||||
FAILURE: Build failed with an exception.
|
||||
|
||||
* What went wrong:
|
||||
Execution failed for task ':test'.
|
||||
> There were failing tests. See the report at: file:///Users/jtigger/exercism/exercises/kotlin/hello-world/build/reports/tests/index.html
|
||||
|
||||
* Try:
|
||||
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
|
||||
|
||||
BUILD FAILED
|
||||
|
||||
Total time: 7.473 secs
|
||||
```
|
||||
|
||||
Seeing the word "fail" NINE TIMES might give you the impression you've done
|
||||
something horribly wrong! You haven't. It's a whole lot of noise over
|
||||
a single test not passing.
|
||||
|
||||
Let's focus in on the important bits:
|
||||
|
||||
```
|
||||
HelloWorldTest > helloNoName FAILED
|
||||
org.junit.ComparisonFailure: expected:<[Hello, World!]> but was:<[]>
|
||||
```
|
||||
|
||||
...is read: "Within the test class named `HelloWorldTest`, the test method
|
||||
`helloNoName` did not pass because the solution did not satisfy an
|
||||
assertion. Apparently, we expected to see the string 'Hello, World!' but
|
||||
a blank string was returned instead.
|
||||
|
||||
The last line of the stack trace tells us exactly where this unsatisfied
|
||||
assertion lives:
|
||||
|
||||
```
|
||||
at HelloWorldTest.helloNoName(HelloWorldTest.kt:10)
|
||||
```
|
||||
|
||||
Looks like the scene of the crime is on line 10 in the test file.
|
||||
|
||||
Knowing these two facts,
|
||||
|
||||
1. the return value was not what was expected, and
|
||||
2. the failure was on line 10 of the test,
|
||||
|
||||
we can turn this failure into success.
|
||||
|
||||
|
||||
|
||||
## Fixing the first failing test
|
||||
|
||||
In your favorite text editor, open `src/test/kotlin/HelloWorldTest.kt`
|
||||
and go to line 10.
|
||||
|
||||
```kotlin
|
||||
assertEquals("Hello, World!", hello(""));
|
||||
```
|
||||
|
||||
The test is expecting that `hello()`, when given an empty string (`""`),
|
||||
returns "Hello, World!". Instead, `hello()` is returning `""`.
|
||||
Let's fix that.
|
||||
|
||||
Open `src/main/kotlin/HelloWorld.kt`.
|
||||
|
||||
```kotlin
|
||||
fun hello(name: String = ""): String {
|
||||
return ""
|
||||
}
|
||||
```
|
||||
|
||||
Let's change that to return the expected string:
|
||||
|
||||
```kotlin
|
||||
fun hello(name: String = ""): String {
|
||||
return "Hello, World!"
|
||||
}
|
||||
```
|
||||
|
||||
Save the file and run the tests again:
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
:compileKotlin
|
||||
w: /Users/jtigger/exercism/exercises/kotlin/hello-world/src/main/kotlin/HelloWorld.kt: (1, 11): Parameter 'name' is never used
|
||||
:compileJava UP-TO-DATE
|
||||
:copyMainKotlinClasses
|
||||
:processResources UP-TO-DATE
|
||||
:classes UP-TO-DATE
|
||||
:compileTestKotlin
|
||||
:compileTestJava UP-TO-DATE
|
||||
:copyTestKotlinClasses UP-TO-DATE
|
||||
:processTestResources UP-TO-DATE
|
||||
:testClasses UP-TO-DATE
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName SKIPPED
|
||||
|
||||
HelloWorldTest > helloBlankName SKIPPED
|
||||
|
||||
HelloWorldTest > helloNoName PASSED
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName SKIPPED
|
||||
|
||||
BUILD SUCCESSFUL
|
||||
|
||||
Total time: 7.318 secs
|
||||
```
|
||||
|
||||
"BUILD SUCCESSFUL"! Woohoo! :) You can see that `helloNoName()` test is
|
||||
now passing.
|
||||
|
||||
We still see the warning about `name` not being used; we'll get to that
|
||||
next.
|
||||
|
||||
With one win under our belt, we can turn our focus to some other messages
|
||||
that we've been ignoring: the lines ending in "`SKIPPED`".
|
||||
|
||||
Each test suite contains a series of tests, all of which have been marked
|
||||
to be skipped/ignored except the first one. We did this to help you focus
|
||||
on getting one test running at a time.
|
||||
|
||||
Let's tackle the next test...
|
||||
|
||||
|
||||
|
||||
## Enabling and fixing the second test
|
||||
|
||||
Right now, that second test is being skipped/ignored. Let's enable it.
|
||||
|
||||
(Re)open `src/test/kotlin/HelloWorldTest.kt` and find the second test:
|
||||
|
||||
```kotlin
|
||||
@Test
|
||||
@Ignore
|
||||
fun helloSampleName() {
|
||||
assertEquals("Hello, Alice!", hello("Alice"))
|
||||
}
|
||||
```
|
||||
|
||||
When the JUnit test runner sees that `@Ignore` annotation on the test
|
||||
method, it knows to skip over that test. Remove that line:
|
||||
|
||||
```kotlin
|
||||
@Test
|
||||
fun helloSampleName() {
|
||||
assertEquals("Hello, Alice!", hello("Alice"))
|
||||
}
|
||||
```
|
||||
|
||||
Now, when you run the tests, both tests run:
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName FAILED
|
||||
org.junit.ComparisonFailure: expected:<Hello, [Alice]!> but was:<Hello, [World]!>
|
||||
at org.junit.Assert.assertEquals(Assert.java:115)
|
||||
at org.junit.Assert.assertEquals(Assert.java:144)
|
||||
at HelloWorldTest.helloSampleName(HelloWorldTest.kt:15)
|
||||
|
||||
HelloWorldTest > helloBlankName SKIPPED
|
||||
|
||||
HelloWorldTest > helloNoName PASSED
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName SKIPPED
|
||||
|
||||
4 tests completed, 1 failed, 2 skipped
|
||||
```
|
||||
|
||||
The first test, `helloNoName()` continues to pass. We see that
|
||||
`helloSampleName` -- the test we just un-`@Ignore`'d -- is now running and
|
||||
failing. Yay, failing test! In fact, the "failure" message is just
|
||||
describing the difference between what the program does now and what it
|
||||
should do for us to call it "done."
|
||||
|
||||
Right now, we've hardcoded the greeting. Enabling this second test has
|
||||
unleashed a new expectation: that our program incorporate a name given
|
||||
into that greeting. When given the name "`Alice`", that's who should be
|
||||
greeted instead of "`World`".
|
||||
|
||||
(Re)open `src/main/kotlin/HelloWorld.kt`.
|
||||
|
||||
```kotlin
|
||||
fun hello(name: String = ""): String {
|
||||
return "Hello, World!"
|
||||
}
|
||||
```
|
||||
|
||||
While `hello()` does accept a reference to a string named `name`, it is not
|
||||
using it in the output. Let's change that:
|
||||
|
||||
|
||||
```kotlin
|
||||
fun hello(name: String = ""): String {
|
||||
return "Hello, $name!"
|
||||
}
|
||||
```
|
||||
|
||||
_(Kotlin allows you to embed expressions within strings, a feature known as
|
||||
string interpolation. For more about this feature, see
|
||||
https://kotlinlang.org/docs/reference/basic-types.html#string-templates )_
|
||||
|
||||
... and rerun the tests ...
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName PASSED
|
||||
|
||||
HelloWorldTest > helloBlankName SKIPPED
|
||||
|
||||
HelloWorldTest > helloNoName FAILED
|
||||
org.junit.ComparisonFailure: expected:<Hello, [World]!> but was:<Hello, []!>
|
||||
at org.junit.Assert.assertEquals(Assert.java:115)
|
||||
at org.junit.Assert.assertEquals(Assert.java:144)
|
||||
at HelloWorldTest.helloNoName(HelloWorldTest.kt:10)
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName SKIPPED
|
||||
|
||||
4 tests completed, 1 failed, 2 skipped
|
||||
```
|
||||
|
||||
Wait... didn't we just fix the test? Why is it failing? Take a closer look...
|
||||
|
||||
In fact, `helloSampleName()` *is* passing. It's just that at the same time,
|
||||
we just inadvertently broke that first test: `helloNoName()`.
|
||||
|
||||
This is one tiny example of the benefit of maintaining a test suite: if we
|
||||
use them to drive out our code, the second we break the program the tests
|
||||
say so. Since we saw them passing just *before* our latest change,
|
||||
whatever we *just* did most likely cause that regression.
|
||||
|
||||
Our latest change was making the greeting dependent on the name given. If
|
||||
no name is given, our function defaults to an empty string. The intent is
|
||||
that when `hello()` is called on no one in particular, our function greets
|
||||
the whole world. Sound like a job for a default value!
|
||||
|
||||
`src/main/kotlin/HelloWorld.kt`:
|
||||
```kotlin
|
||||
fun hello(name: String = "World"): String {
|
||||
return "Hello, $name!"
|
||||
}
|
||||
```
|
||||
|
||||
... and re-run the tests ...
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
:compileKotlin
|
||||
:compileJava UP-TO-DATE
|
||||
:copyMainKotlinClasses
|
||||
:processResources UP-TO-DATE
|
||||
:classes UP-TO-DATE
|
||||
:compileTestKotlin
|
||||
:compileTestJava UP-TO-DATE
|
||||
:copyTestKotlinClasses
|
||||
:processTestResources UP-TO-DATE
|
||||
:testClasses UP-TO-DATE
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName PASSED
|
||||
|
||||
HelloWorldTest > helloBlankName SKIPPED
|
||||
|
||||
HelloWorldTest > helloNoName PASSED
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName SKIPPED
|
||||
|
||||
BUILD SUCCESSFUL
|
||||
```
|
||||
|
||||
Excellent! Not only are both our tests passing, but that pesky warning
|
||||
about not using `name` has faded into the distant past. We're now
|
||||
(at least) three-fourth the way done. Just two more tests to go...
|
||||
|
||||
|
||||
|
||||
## Enabling and fixing the third test
|
||||
|
||||
(Re)open `src/test/kotlin/HelloWorldTest.kt` and find the penultimate test:
|
||||
|
||||
```kotlin
|
||||
@Test
|
||||
@Ignore
|
||||
fun helloBlankName() {
|
||||
assertEquals("Hello, World!", hello(" "))
|
||||
}
|
||||
```
|
||||
|
||||
In this test, we're trying to be tricky. It's one thing to omit a
|
||||
parameter completely; it's a whole other situation when we provide a blank
|
||||
string for a name. This test is telling us that we'd like to treat these
|
||||
cases the same way.
|
||||
|
||||
... and remove it's `@Ignore` to enable it ...
|
||||
|
||||
```kotlin
|
||||
@Test
|
||||
fun helloBlankName() {
|
||||
assertEquals("Hello, World!", hello(" "))
|
||||
}
|
||||
```
|
||||
|
||||
... and re-run the tests ...
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName PASSED
|
||||
|
||||
HelloWorldTest > helloBlankName FAILED
|
||||
org.junit.ComparisonFailure: expected:<Hello, [World]!> but was:<Hello, [ ]!>
|
||||
at org.junit.Assert.assertEquals(Assert.java:115)
|
||||
at org.junit.Assert.assertEquals(Assert.java:144)
|
||||
at HelloWorldTest.helloBlankName(HelloWorldTest.kt:20)
|
||||
|
||||
HelloWorldTest > helloNoName PASSED
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName SKIPPED
|
||||
|
||||
4 tests completed, 1 failed, 1 skipped
|
||||
```
|
||||
|
||||
Since `" "` is an actual value, Kotlin does _not_ substitute in the
|
||||
default value.
|
||||
|
||||
(Re)open `src/main/kotlin/HelloWorld.kt`.
|
||||
|
||||
```kotlin
|
||||
fun hello(name: String = "World"): String {
|
||||
return "Hello, $name!"
|
||||
}
|
||||
```
|
||||
|
||||
One way to handle this case is to check to see if `name` is blank. Let's
|
||||
do that:
|
||||
|
||||
|
||||
```kotlin
|
||||
fun hello(name: String = "World"): String {
|
||||
return "Hello, ${if (name.isBlank()) "World" else name}!"
|
||||
}
|
||||
```
|
||||
|
||||
As you can see, string templates can contain not just references to
|
||||
variables, but entire expressions! This is appropriate in a case like this
|
||||
where we want to apply a simple condition to a value.
|
||||
|
||||
... and rerun the tests ...
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName PASSED
|
||||
|
||||
HelloWorldTest > helloBlankName PASSED
|
||||
|
||||
HelloWorldTest > helloNoName PASSED
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName SKIPPED
|
||||
|
||||
BUILD SUCCESSFUL
|
||||
```
|
||||
|
||||
We're almost there (perhaps closer than you think)! Just _one_ more test
|
||||
to pass before we have a solution we can have real confidence in.
|
||||
|
||||
|
||||
|
||||
## Enabling the last test
|
||||
|
||||
(Re)open `src/test/kotlin/HelloWorldTest.kt` and find the last test:
|
||||
|
||||
```kotlin
|
||||
@Test
|
||||
@Ignore
|
||||
fun helloAnotherSampleName() {
|
||||
assertEquals("Hello, Bob!", hello("Bob"))
|
||||
}
|
||||
```
|
||||
|
||||
... and pop-off that `@Ignore` ...
|
||||
|
||||
```kotlin
|
||||
@Test
|
||||
fun helloAnotherSampleName() {
|
||||
assertEquals("Hello, Bob!", hello("Bob"))
|
||||
}
|
||||
```
|
||||
|
||||
... then rerun the tests ...
|
||||
|
||||
```
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName PASSED
|
||||
|
||||
HelloWorldTest > helloBlankName PASSED
|
||||
|
||||
HelloWorldTest > helloNoName PASSED
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName PASSED
|
||||
|
||||
BUILD SUCCESSFUL
|
||||
```
|
||||
|
||||
Oh, hello! Turns out, the solution we put into place didn't just apply for
|
||||
"`Alice`" but for "`Bob`" equally well. In this case, the test succeeded
|
||||
with no additional code on our part.
|
||||
|
||||
Congratulations!
|
||||
|
||||
|
||||
|
||||
## Refactoring
|
||||
|
||||
Now that you've got all the tests passing, you might consider whether
|
||||
the code is in the most readable/maintainable/efficient shape. What makes
|
||||
for "good" design of software is a big topic. The pursuit of it underlies
|
||||
much of what makes up the more valuable conversations on Exercism.
|
||||
|
||||
Kotlin is such a concise language and this exercise is so small, there is
|
||||
not much room for us to make adjustments. Most would leave this code, as
|
||||
is.
|
||||
|
||||
That said, we've taken such pains to illustrate two core parts of the
|
||||
Test-Driven Development approach (i.e. "red", "green"), we'd be remiss if
|
||||
we skipped the all important final part: "refactor".
|
||||
|
||||
More on TDD at http://www.jamesshore.com/Blog/Red-Green-Refactor.html.
|
||||
|
||||
The core responsibility of `hello()` is to produce a personalized greeting.
|
||||
_How_ we determine whether or not a name is given (i.e. `name` is
|
||||
effectively an empty string) is a lower-level detail.
|
||||
|
||||
```kotlin
|
||||
fun hello(name: String = "World"): String {
|
||||
return "Hello, ${if (name.isBlank()) "World" else name}!"
|
||||
}
|
||||
```
|
||||
|
||||
How would things read if we extracted that detail into a separate method?
|
||||
|
||||
```kotlin
|
||||
fun hello(name: String = ""): String {
|
||||
return "Hello, ${whom(name)}!"
|
||||
}
|
||||
|
||||
private fun whom(name: String):String {
|
||||
return if(name.isBlank()) "World" else name;
|
||||
}
|
||||
```
|
||||
|
||||
By extracting that logic into the `whom()` method, we've added a little
|
||||
abstraction to our program — it's not as literal as it was before. Yet,
|
||||
it allows us to defer _needing_ to understand _how_ the recipient of the
|
||||
greeting is determined.
|
||||
|
||||
If we can assume that `whom()` just works, we don't have to
|
||||
downshift in our head to those details. Instead, we can remain at the same
|
||||
level of thinking: what's the greeting?
|
||||
|
||||
_(Yes, this is considerable more lines of code; again, not a move we'd likely
|
||||
make typically. The takeaway is this: when you are "done" with an exercise
|
||||
ask yourself, "can I adjust the shape of this code to better tell the
|
||||
story of what's going on through its shape?")_
|
||||
|
||||
We made a bunch of changes, let's make sure we didn't break the program!
|
||||
|
||||
```
|
||||
$ gradle test
|
||||
:compileKotlin
|
||||
:compileJava UP-TO-DATE
|
||||
:copyMainKotlinClasses
|
||||
:processResources UP-TO-DATE
|
||||
:classes UP-TO-DATE
|
||||
:compileTestKotlin
|
||||
:compileTestJava UP-TO-DATE
|
||||
:copyTestKotlinClasses UP-TO-DATE
|
||||
:processTestResources UP-TO-DATE
|
||||
:testClasses UP-TO-DATE
|
||||
:test
|
||||
|
||||
HelloWorldTest > helloSampleName PASSED
|
||||
|
||||
HelloWorldTest > helloBlankName PASSED
|
||||
|
||||
HelloWorldTest > helloNoName PASSED
|
||||
|
||||
HelloWorldTest > helloAnotherSampleName PASSED
|
||||
|
||||
BUILD SUCCESSFUL
|
||||
```
|
||||
|
||||
This illustrates another benefit of writing tests: you can make significant
|
||||
changes to the structure of the program and very quickly restore your
|
||||
confidence that the program still works. These tests are a far cry from a
|
||||
"proof" of correctness, but well-written tests do a much better job of
|
||||
(very quickly) giving us evidence that it is. Without them, we manually
|
||||
run the program with different inputs and/or inspecting the code
|
||||
line-by-line — time-consuming and error prone.
|
||||
|
||||
|
||||
|
||||
# Submitting your first iteration
|
||||
|
||||
With a working solution that we've reviewed, we're ready to submit it to
|
||||
exercism.io.
|
||||
|
||||
```
|
||||
$ exercism submit src/main/kotlin/HelloWorld.kt
|
||||
```
|
||||
|
||||
|
||||
|
||||
# Next Steps
|
||||
|
||||
From here, there are a number of paths you can take.
|
||||
|
||||
|
||||
## Move on to the next exercise
|
||||
|
||||
There are many more exercises you can practice with. Grab the next one!
|
||||
|
||||
```
|
||||
$ exercism fetch kotlin
|
||||
```
|
||||
|
||||
|
||||
## Review (and comment on) others' submissions to this exercise
|
||||
|
||||
The heart of Exercism is the conversations about coding
|
||||
practices. It's definitely fun to practice, but engaging with others
|
||||
both in their attempts and your own is how you get feedback. That feedback
|
||||
can help point out what you're doing well and where you might need to
|
||||
improve.
|
||||
|
||||
Some submissions will be nearly identical to yours; others will be
|
||||
completely different. Seeing both kinds can be instructive and interesting.
|
||||
|
||||
Note that you can only view submissions of others for exercises you have
|
||||
completed yourself. This enriches the experience of reading others' code
|
||||
because you'll have your own experience of trying to solve the problem.
|
||||
|
||||
Here's an up-to-date list of submissions on the Kotlin track:
|
||||
|
||||
http://exercism.io/tracks/kotlin/exercises
|
||||
|
||||
|
||||
|
||||
## Submit another iteration
|
||||
|
||||
You are also encouraged to consider additional "requirements" on a given
|
||||
exercise.
|
||||
|
||||
For example, you could add a test or two that requires that the greeting
|
||||
use the capitalized form on the person's name, regardless of the case they
|
||||
used.
|
||||
|
||||
In that situation, you'd:
|
||||
|
||||
1. add a new test setting up that new expectation,
|
||||
2. implement that in the code (the same process we just went through
|
||||
together, above).
|
||||
3. review your code for readability and refactor as you see fit.
|
||||
|
||||
Exercism practitioners who "play" with each exercise — over trying to go as
|
||||
fast as they can through the stream of exercises — report deep rewards.
|
||||
|
||||
|
||||
## Contribute to Exercism
|
||||
|
||||
The entire of Exercism is Open Source and is the labor of love for more
|
||||
than 100 maintainers and many more contributors.
|
||||
|
||||
A starting point to jumping in can be found here:
|
||||
|
||||
https://github.com/exercism/problem-specifications/blob/master/CONTRIBUTING.md
|
||||
|
||||
----
|
||||
|
||||
Regardless of what you decide to do next, we sincerely hope you learn
|
||||
and enjoy being part of this community. If at any time you need assistance
|
||||
do not hesitate to ask for help:
|
||||
|
||||
http://exercism.io/languages/kotlin/help
|
||||
|
||||
Cheers!
|
28
kotlin/hello-world/build.gradle
Normal file
28
kotlin/hello-world/build.gradle
Normal file
|
@ -0,0 +1,28 @@
|
|||
buildscript {
|
||||
ext.kotlin_version = '1.1.1'
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
}
|
||||
}
|
||||
|
||||
apply plugin: 'kotlin'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
||||
|
||||
testCompile 'junit:junit:4.12'
|
||||
testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"
|
||||
}
|
||||
test {
|
||||
testLogging {
|
||||
exceptionFormat = 'full'
|
||||
events = ["passed", "failed", "skipped"]
|
||||
}
|
||||
}
|
7
kotlin/hello-world/src/main/kotlin/HelloWorld.kt
Normal file
7
kotlin/hello-world/src/main/kotlin/HelloWorld.kt
Normal file
|
@ -0,0 +1,7 @@
|
|||
fun hello(name: String = ""): String {
|
||||
val greeting = name.trim();
|
||||
if (greeting == "") {
|
||||
return "Hello, World!"
|
||||
}
|
||||
else return "Hello, " + greeting + "!"
|
||||
}
|
30
kotlin/hello-world/src/test/kotlin/HelloWorldTest.kt
Normal file
30
kotlin/hello-world/src/test/kotlin/HelloWorldTest.kt
Normal file
|
@ -0,0 +1,30 @@
|
|||
import org.junit.Ignore
|
||||
import org.junit.Test
|
||||
import org.junit.Assert.assertEquals
|
||||
|
||||
|
||||
class HelloWorldTest {
|
||||
|
||||
@Test
|
||||
fun helloNoName() {
|
||||
assertEquals("Hello, World!", hello())
|
||||
}
|
||||
|
||||
@Test
|
||||
@Ignore
|
||||
fun helloSampleName() {
|
||||
assertEquals("Hello, Alice!", hello("Alice"))
|
||||
}
|
||||
|
||||
@Test
|
||||
@Ignore
|
||||
fun helloBlankName() {
|
||||
assertEquals("Hello, World!", hello(" "))
|
||||
}
|
||||
|
||||
@Test
|
||||
@Ignore
|
||||
fun helloAnotherSampleName() {
|
||||
assertEquals("Hello, Bob!", hello("Bob"))
|
||||
}
|
||||
}
|
BIN
kotlin/luhn/.gradle/3.5/file-changes/last-build.bin
Normal file
BIN
kotlin/luhn/.gradle/3.5/file-changes/last-build.bin
Normal file
Binary file not shown.
BIN
kotlin/luhn/.gradle/3.5/taskHistory/taskHistory.lock
Normal file
BIN
kotlin/luhn/.gradle/3.5/taskHistory/taskHistory.lock
Normal file
Binary file not shown.
0
kotlin/luhn/.gradle/buildOutputCleanup/built.bin
Normal file
0
kotlin/luhn/.gradle/buildOutputCleanup/built.bin
Normal file
2
kotlin/luhn/.gradle/buildOutputCleanup/cache.properties
Normal file
2
kotlin/luhn/.gradle/buildOutputCleanup/cache.properties
Normal file
|
@ -0,0 +1,2 @@
|
|||
#Mon Jul 17 15:52:28 EDT 2017
|
||||
gradle.version=3.5
|
|
@ -0,0 +1 @@
|
|||
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue