trackler 2.0.0.1 → 2.0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/bump-content +3 -1
- data/bin/verify-metadata +2 -2
- data/common/exercises/alphametics/canonical-data.json +19 -9
- data/common/exercises/food-chain/canonical-data.json +7 -1
- data/common/exercises/grains/canonical-data.json +66 -0
- data/common/exercises/raindrops/description.md +4 -5
- data/common/exercises/triangle/canonical-data.json +81 -54
- data/lib/trackler/version.rb +1 -1
- data/tracks/c/config.json +26 -19
- data/tracks/c/exercises/allergies/makefile +15 -0
- data/tracks/c/exercises/allergies/src/allergies.h +21 -0
- data/tracks/c/exercises/allergies/src/example.c +32 -0
- data/tracks/c/exercises/allergies/src/example.h +26 -0
- data/tracks/c/exercises/allergies/test/test_allergies.c +203 -0
- data/tracks/c/exercises/allergies/test/vendor/unity.c +1300 -0
- data/tracks/c/exercises/allergies/test/vendor/unity.h +274 -0
- data/tracks/c/exercises/allergies/test/vendor/unity_internals.h +701 -0
- data/tracks/c/exercises/atbash-cipher/makefile +16 -0
- data/tracks/c/exercises/atbash-cipher/src/example.c +71 -0
- data/tracks/c/exercises/atbash-cipher/src/example.h +7 -0
- data/tracks/c/exercises/atbash-cipher/test/test_atbash_cipher.c +113 -0
- data/tracks/c/exercises/atbash-cipher/test/vendor/unity.c +1300 -0
- data/tracks/c/exercises/atbash-cipher/test/vendor/unity.h +274 -0
- data/tracks/c/exercises/atbash-cipher/test/vendor/unity_internals.h +701 -0
- data/tracks/c/exercises/phone-number/makefile +16 -0
- data/tracks/c/exercises/phone-number/src/example.c +66 -0
- data/tracks/c/exercises/phone-number/src/example.h +8 -0
- data/tracks/c/exercises/phone-number/test/test_phone_number.c +108 -0
- data/tracks/c/exercises/phone-number/test/vendor/unity.c +1300 -0
- data/tracks/c/exercises/phone-number/test/vendor/unity.h +274 -0
- data/tracks/c/exercises/phone-number/test/vendor/unity_internals.h +701 -0
- data/tracks/csharp/config.json +8 -0
- data/tracks/csharp/exercises/bowling/BowlingTest.cs +188 -33
- data/tracks/csharp/exercises/bowling/Example.cs +38 -9
- data/tracks/csharp/exercises/rectangles/Example.cs +91 -0
- data/tracks/csharp/exercises/rectangles/RectanglesTest.cs +133 -0
- data/tracks/elisp/docs/INSTALLATION.org +1 -1
- data/tracks/elixir/config.json +8 -66
- data/tracks/elixir/docs/LEARNING.md +1 -1
- data/tracks/elixir/exercises/diamond/diamond_test.exs +12 -12
- data/tracks/elixir/exercises/grep/example.exs +92 -0
- data/tracks/elixir/exercises/grep/grep.exs +6 -0
- data/tracks/elixir/exercises/grep/grep_test.exs +259 -0
- data/tracks/elixir/exercises/markdown/markdown.exs +59 -2
- data/tracks/elixir/exercises/nucleotide-count/nucleotide_count_test.exs +4 -4
- data/tracks/elixir/exercises/phone-number/phone_number_test.exs +5 -0
- data/tracks/fsharp/exercises/bowling/BowlingTest.fs +158 -43
- data/tracks/fsharp/exercises/bowling/Example.fs +53 -24
- data/tracks/go/config.json +5 -0
- data/tracks/go/exercises/diamond/diamond_test.go +227 -0
- data/tracks/go/exercises/diamond/example.go +47 -0
- data/tracks/go/exercises/food-chain/example.go +1 -1
- data/tracks/go/exercises/food-chain/food_chain_test.go +30 -6
- data/tracks/go/exercises/nucleotide-count/example.go +21 -8
- data/tracks/go/exercises/nucleotide-count/nucleotide_count_test.go +45 -37
- data/tracks/haskell/exercises/anagram/test/Tests.hs +1 -11
- data/tracks/java/bin/journey-test.sh +165 -128
- data/tracks/java/docs/ABOUT.md +5 -8
- data/tracks/java/exercises/hello-world/build.gradle +0 -6
- data/tracks/java/exercises/hello-world/src/test/java/HelloWorldTest.java +0 -1
- data/tracks/java/exercises/meetup/build.gradle +0 -1
- data/tracks/java/exercises/meetup/src/example/java/Meetup.java +9 -7
- data/tracks/java/exercises/meetup/src/test/java/MeetupTest.java +185 -188
- data/tracks/lua/config.json +0 -73
- data/tracks/lua/exercises/bowling/bowling_spec.lua +92 -48
- data/tracks/lua/exercises/bowling/example.lua +4 -1
- data/tracks/objective-c/config.json +9 -30
- data/tracks/objective-c/exercises/pangram/PangramExample.h +7 -0
- data/tracks/objective-c/exercises/pangram/PangramExample.m +21 -0
- data/tracks/objective-c/exercises/pangram/PangramTest.m +51 -0
- data/tracks/objective-c/xcodeProject/ObjectiveC.xcodeproj/project.pbxproj +18 -0
- data/tracks/ocaml/README.md +46 -1
- data/tracks/ocaml/SETUP.md +21 -2
- data/tracks/ocaml/config.json +48 -78
- data/tracks/perl5/README.md +15 -8
- data/tracks/perl5/testall.pl +5 -5
- data/tracks/php/config.json +26 -34
- data/tracks/php/docs/ABOUT.md +15 -0
- data/tracks/php/exercises/allergies/allergies_test.php +121 -0
- data/tracks/php/exercises/allergies/example.php +64 -0
- data/tracks/php/exercises/etl/etl_test.php +52 -0
- data/tracks/php/exercises/etl/example.php +12 -0
- data/tracks/php/exercises/nucleotide-count/example.php +25 -0
- data/tracks/php/exercises/nucleotide-count/nucleotide-count_test.php +36 -0
- data/tracks/php/exercises/pig-latin/example.php +25 -29
- data/tracks/php/exercises/pig-latin/pig-latin_test.php +26 -19
- data/tracks/php/exercises/space-age/example.php +65 -0
- data/tracks/php/exercises/space-age/space-age_test.php +70 -0
- data/tracks/php/exercises/triangle/example.php +43 -0
- data/tracks/php/exercises/triangle/triangle_test.php +140 -0
- data/tracks/pony/exercises/anagram/example.pony +6 -6
- data/tracks/pony/exercises/anagram/test.pony +3 -4
- data/tracks/pony/exercises/bob/test.pony +23 -23
- data/tracks/pony/exercises/difference-of-squares/test.pony +11 -11
- data/tracks/pony/exercises/hamming/example.pony +3 -3
- data/tracks/pony/exercises/hamming/test.pony +16 -16
- data/tracks/pony/exercises/hello-world/test.pony +5 -4
- data/tracks/pony/exercises/leap/test.pony +8 -8
- data/tracks/python/config.json +18 -0
- data/tracks/python/exercises/diamond/diamond_test.py +33 -0
- data/tracks/python/exercises/diamond/example.py +15 -0
- data/tracks/python/exercises/linked-list/example.py +47 -0
- data/tracks/python/exercises/linked-list/linked_list.py +13 -0
- data/tracks/python/exercises/linked-list/linked_list_test.py +49 -0
- data/tracks/python/exercises/list-ops/example.py +55 -0
- data/tracks/python/exercises/list-ops/list_ops.py +38 -0
- data/tracks/python/exercises/list-ops/list_ops_test.py +136 -0
- data/tracks/ruby/bin/generate +22 -2
- data/tracks/ruby/config.json +12 -83
- data/tracks/ruby/exercises/allergies/allergies_test.rb +0 -1
- data/tracks/ruby/exercises/atbash-cipher/atbash_cipher_test.rb +0 -1
- data/tracks/ruby/exercises/beer-song/beer_song_test.rb +1 -2
- data/tracks/ruby/exercises/binary/example.rb +0 -1
- data/tracks/ruby/exercises/binary-search-tree/binary_search_tree_test.rb +1 -1
- data/tracks/ruby/exercises/bowling/.version +1 -0
- data/tracks/ruby/exercises/bowling/bowling_test.rb +109 -133
- data/tracks/ruby/exercises/bowling/example.rb +7 -7
- data/tracks/ruby/exercises/bowling/example.tt +27 -0
- data/tracks/ruby/exercises/circular-buffer/circular_buffer_test.rb +0 -2
- data/tracks/ruby/exercises/clock/example.rb +0 -2
- data/tracks/ruby/exercises/connect/connect_test.rb +0 -1
- data/tracks/ruby/exercises/custom-set/custom_set_test.rb +0 -1
- data/tracks/ruby/exercises/diamond/diamond_test.rb +0 -1
- data/tracks/ruby/exercises/etl/etl_test.rb +1 -1
- data/tracks/ruby/exercises/house/house_test.rb +0 -1
- data/tracks/ruby/exercises/isogram/isogram_test.rb +2 -2
- data/tracks/ruby/exercises/largest-series-product/example.tt +0 -3
- data/tracks/ruby/exercises/largest-series-product/largest_series_product_test.rb +0 -4
- data/tracks/ruby/exercises/linked-list/linked_list_test.rb +1 -1
- data/tracks/ruby/exercises/meetup/meetup_test.rb +0 -1
- data/tracks/ruby/exercises/nth-prime/example.tt +0 -2
- data/tracks/ruby/exercises/nth-prime/nth_prime_test.rb +0 -2
- data/tracks/ruby/exercises/ocr-numbers/ocr_numbers_test.rb +1 -2
- data/tracks/ruby/exercises/protein-translation/protein_translation_test.rb +0 -1
- data/tracks/ruby/exercises/proverb/proverb_test.rb +1 -3
- data/tracks/ruby/exercises/queen-attack/example.rb +3 -1
- data/tracks/ruby/exercises/queen-attack/queen_attack_test.rb +34 -8
- data/tracks/ruby/exercises/robot-simulator/robot_simulator_test.rb +1 -1
- data/tracks/ruby/exercises/strain/strain_test.rb +2 -2
- data/tracks/ruby/exercises/tournament/.version +1 -0
- data/tracks/ruby/exercises/tournament/example.rb +54 -0
- data/tracks/ruby/exercises/tournament/example.tt +23 -0
- data/tracks/ruby/exercises/tournament/tournament_test.rb +92 -0
- data/tracks/ruby/exercises/transpose/.version +1 -0
- data/tracks/ruby/exercises/transpose/example.rb +14 -0
- data/tracks/ruby/exercises/transpose/example.tt +22 -0
- data/tracks/ruby/exercises/transpose/transpose_test.rb +303 -0
- data/tracks/ruby/lib/bowling_cases.rb +46 -0
- data/tracks/ruby/lib/isogram_cases.rb +1 -1
- data/tracks/ruby/lib/tournament_cases.rb +45 -0
- data/tracks/ruby/lib/transpose_cases.rb +45 -0
- data/tracks/rust/config.json +2 -0
- data/tracks/rust/exercises/bowling/.gitignore +7 -0
- data/tracks/rust/exercises/bowling/Cargo.toml +3 -0
- data/tracks/rust/exercises/bowling/example.rs +134 -0
- data/tracks/rust/exercises/bowling/tests/bowling.rs +373 -0
- data/tracks/rust/exercises/grains/.gitignore +7 -0
- data/tracks/rust/exercises/grains/Cargo.toml +3 -0
- data/tracks/rust/exercises/grains/example.rs +11 -0
- data/tracks/rust/exercises/grains/src/lib.rs +7 -0
- data/tracks/rust/exercises/grains/tests/grains.rs +63 -0
- data/tracks/rust/problems.md +2 -0
- data/tracks/scala/README.md +38 -0
- data/tracks/scala/config.json +20 -74
- data/tracks/scala/exercises/accumulate/src/test/scala/accumulate_test.scala +4 -0
- data/tracks/scala/exercises/allergies/src/test/scala/allergies_test.scala +11 -0
- data/tracks/scala/exercises/alphametics/build.sbt +6 -0
- data/tracks/scala/exercises/alphametics/example.scala +125 -0
- data/tracks/scala/exercises/alphametics/src/main/scala/.keep +0 -0
- data/tracks/scala/exercises/alphametics/src/test/scala/AlphameticsTest.scala +62 -0
- data/tracks/scala/exercises/atbash-cipher/src/test/scala/atbash_test.scala +8 -0
- data/tracks/scala/exercises/bank-account/src/test/scala/BankAccountTest.scala +4 -0
- data/tracks/scala/exercises/binary/src/test/scala/binary_test.scala +13 -0
- data/tracks/scala/exercises/binary-search-tree/src/test/scala/BstTest.scala +11 -0
- data/tracks/scala/exercises/bowling/Example.scala +116 -0
- data/tracks/scala/exercises/bowling/build.sbt +3 -0
- data/tracks/scala/exercises/bowling/src/main/scala/Bowling.scala +11 -0
- data/tracks/scala/exercises/bowling/src/test/scala/BowlingSuite.scala +237 -0
- data/tracks/scala/exercises/clock/src/test/scala/ClockTest.scala +50 -0
- data/tracks/scala/exercises/connect/README.md +17 -0
- data/tracks/scala/exercises/connect/src/test/scala/ConnectTest.scala +7 -0
- data/tracks/scala/exercises/crypto-square/src/test/scala/{CrytpoSquareTest.scala → CryptoSquareTest.scala} +9 -0
- data/tracks/scala/exercises/custom-set/src/test/scala/CustomSetTest.scala +36 -0
- data/tracks/scala/exercises/difference-of-squares/src/test/scala/squares_test.scala +8 -0
- data/tracks/scala/exercises/forth/src/test/scala/ForthTest.scala +22 -0
- data/tracks/scala/exercises/hexadecimal/src/test/scala/HexadecimalTest.scala +8 -0
- data/tracks/scala/exercises/kindergarten-garden/src/test/scala/GardenTest.scala +5 -0
- data/tracks/scala/exercises/largest-series-product/src/test/scala/SeriesTest.scala +2 -0
- data/tracks/scala/exercises/linked-list/src/test/scala/DequeTest.scala +4 -0
- data/tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala +4 -0
- data/tracks/scala/exercises/matrix/src/test/scala/MatrixTest.scala +2 -0
- data/tracks/scala/exercises/minesweeper/src/test/scala/MinesweeperTest.scala +6 -0
- data/tracks/scala/exercises/nth-prime/src/test/scala/PrimeTest.scala +5 -0
- data/tracks/scala/exercises/ocr-numbers/src/test/scala/OcrTest.scala +15 -0
- data/tracks/scala/exercises/octal/src/test/scala/OctalTest.scala +7 -0
- data/tracks/scala/exercises/parallel-letter-frequency/src/test/scala/FrequencyTest.scala +8 -0
- data/tracks/scala/exercises/pascals-triangle/src/test/scala/PascalsTriangleTest.scala +5 -0
- data/tracks/scala/exercises/pig-latin/src/test/scala/PigLatinTest.scala +4 -0
- data/tracks/scala/exercises/pythagorean-triplet/src/test/scala/PythagoreanTripletTest.scala +3 -0
- data/tracks/scala/exercises/queen-attack/src/test/scala/QueensTest.scala +5 -0
- data/tracks/scala/exercises/robot-simulator/src/test/scala/RobotTest.scala +16 -8
- data/tracks/scala/exercises/say/src/test/scala/SayTest.scala +34 -17
- data/tracks/scala/exercises/scrabble-score/src/test/scala/scrabble_score_test.scala +6 -0
- data/tracks/scala/exercises/secret-handshake/src/test/scala/SecretHandshakeTest.scala +18 -9
- data/tracks/scala/exercises/series/src/test/scala/SeriesTest.scala +4 -2
- data/tracks/scala/exercises/sieve/src/test/scala/SieveTest.scala +8 -4
- data/tracks/scala/exercises/simple-cipher/src/test/scala/CipherTest.scala +17 -9
- data/tracks/scala/exercises/sublist/src/test/scala/sublist_test.scala +17 -0
- data/tracks/scala/exercises/trinary/src/test/scala/TrinaryTest.scala +14 -7
- data/tracks/scala/exercises/wordy/src/test/scala/WordProblemTest.scala +28 -14
- data/tracks/scala/project/Build.scala +3 -3
- data/tracks/scala/testgen/src/main/scala/BowlingTestGenerator.scala +57 -0
- data/tracks/sml/config.json +41 -6
- data/tracks/sml/exercises/flatten-array/example.sml +6 -0
- data/tracks/sml/exercises/flatten-array/test_flatten_array.sml +10 -0
- data/tracks/sml/exercises/nth-prime/example.sml +46 -0
- data/tracks/sml/exercises/nth-prime/test_nth_prime.sml +14 -0
- data/tracks/sml/exercises/raindrops/example.sml +9 -0
- data/tracks/sml/exercises/raindrops/raindrops.sml +2 -0
- data/tracks/sml/exercises/raindrops/test_raindrops.sml +95 -0
- data/tracks/swift/config.json +269 -328
- data/tracks/swift/exercises/pangram/PangramExample.swift +17 -0
- data/tracks/swift/exercises/pangram/PangramTest.swift +43 -0
- data/tracks/swift/xcodeProject/xSwift.xcodeproj/project.pbxproj +16 -0
- metadata +95 -3
@@ -0,0 +1,17 @@
|
|
1
|
+
import Foundation
|
2
|
+
// Needed to strip diacritics
|
3
|
+
|
4
|
+
struct Pangram {
|
5
|
+
|
6
|
+
static func isPangram(_ text: String) -> Bool {
|
7
|
+
let lowercasedText = text.folding(options: .diacriticInsensitive, locale: .current).lowercased()
|
8
|
+
|
9
|
+
for letter in "abcdefghijklmnopqrstuvwxyz".characters {
|
10
|
+
if lowercasedText.contains(String(letter)) == false {
|
11
|
+
return false
|
12
|
+
}
|
13
|
+
}
|
14
|
+
|
15
|
+
return true
|
16
|
+
}
|
17
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
#if swift(>=3.0)
|
2
|
+
import XCTest
|
3
|
+
#endif
|
4
|
+
|
5
|
+
class PangramTest: XCTestCase {
|
6
|
+
|
7
|
+
func testSentenceEmpty() {
|
8
|
+
XCTAssertFalse(Pangram.isPangram(""))
|
9
|
+
}
|
10
|
+
|
11
|
+
func test_pangram_with_only_lower_case() {
|
12
|
+
XCTAssertTrue(Pangram.isPangram("the quick brown fox jumps over the lazy dog"))
|
13
|
+
}
|
14
|
+
|
15
|
+
func testMissingCharacterX() {
|
16
|
+
XCTAssertFalse(Pangram.isPangram("a quick movement of the enemy will jeopardize five gunboats"))
|
17
|
+
}
|
18
|
+
|
19
|
+
func testAnotherMissingCharacterX() {
|
20
|
+
XCTAssertFalse(Pangram.isPangram("the quick brown fish jumps over the lazy dog"))
|
21
|
+
}
|
22
|
+
|
23
|
+
func testPangramWithUnderscores() {
|
24
|
+
XCTAssertTrue(Pangram.isPangram("the_quick_brown_fox_jumps_over_the_lazy_dog"))
|
25
|
+
}
|
26
|
+
|
27
|
+
func testPangramWithNumbers() {
|
28
|
+
XCTAssertTrue(Pangram.isPangram("the 1 quick brown fox jumps over the 2 lazy dogs"))
|
29
|
+
}
|
30
|
+
|
31
|
+
func testMissingLettersReplacedByNumbers() {
|
32
|
+
XCTAssertFalse(Pangram.isPangram("7h3 qu1ck brown fox jumps ov3r 7h3 lazy dog"))
|
33
|
+
}
|
34
|
+
|
35
|
+
func testPangramWithMixedCaseAndPunctuation() {
|
36
|
+
XCTAssertTrue(Pangram.isPangram("Five quacking Zephyrs jolt my wax bed."))
|
37
|
+
}
|
38
|
+
|
39
|
+
func testPangramWithNonAsciiCharacters() {
|
40
|
+
XCTAssertTrue(Pangram.isPangram("Victor jagt zwölf Boxkämpfer quer über den großen Sylter Deich."))
|
41
|
+
}
|
42
|
+
|
43
|
+
}
|
@@ -131,6 +131,8 @@
|
|
131
131
|
E94BDED01C510E68009318BB /* BinarySearchTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = E94BDECE1C510E68009318BB /* BinarySearchTest.swift */; };
|
132
132
|
E951B6BD1D466045009EB5B6 /* BracketPushExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = E951B6BC1D466045009EB5B6 /* BracketPushExample.swift */; };
|
133
133
|
E951B6BF1D466058009EB5B6 /* BracketPushTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = E951B6BE1D466058009EB5B6 /* BracketPushTest.swift */; };
|
134
|
+
E95606C31DB9270D00EED2F5 /* PangramExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = E95606C21DB9270D00EED2F5 /* PangramExample.swift */; };
|
135
|
+
E95606C51DB9271E00EED2F5 /* PangramTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = E95606C41DB9271E00EED2F5 /* PangramTest.swift */; };
|
134
136
|
E99365461D6CE2D600799C70 /* BowlingExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = E99365451D6CE2D600799C70 /* BowlingExample.swift */; };
|
135
137
|
E99365481D6CE2EA00799C70 /* BowlingTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = E99365471D6CE2EA00799C70 /* BowlingTest.swift */; };
|
136
138
|
E99909621D792446002A2B6E /* RunLengthEncodingExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = E99909611D792446002A2B6E /* RunLengthEncodingExample.swift */; };
|
@@ -287,6 +289,8 @@
|
|
287
289
|
E94BDECE1C510E68009318BB /* BinarySearchTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; name = BinarySearchTest.swift; path = "binary-search/BinarySearchTest.swift"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };
|
288
290
|
E951B6BC1D466045009EB5B6 /* BracketPushExample.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = BracketPushExample.swift; path = "../bracket-push/BracketPushExample.swift"; sourceTree = "<group>"; };
|
289
291
|
E951B6BE1D466058009EB5B6 /* BracketPushTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = BracketPushTest.swift; path = "../bracket-push/BracketPushTest.swift"; sourceTree = "<group>"; };
|
292
|
+
E95606C21DB9270D00EED2F5 /* PangramExample.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = PangramExample.swift; path = pangram/PangramExample.swift; sourceTree = "<group>"; };
|
293
|
+
E95606C41DB9271E00EED2F5 /* PangramTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = PangramTest.swift; path = pangram/PangramTest.swift; sourceTree = "<group>"; };
|
290
294
|
E99365451D6CE2D600799C70 /* BowlingExample.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = BowlingExample.swift; path = bowling/BowlingExample.swift; sourceTree = "<group>"; };
|
291
295
|
E99365471D6CE2EA00799C70 /* BowlingTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = BowlingTest.swift; path = bowling/BowlingTest.swift; sourceTree = "<group>"; };
|
292
296
|
E99909611D792446002A2B6E /* RunLengthEncodingExample.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = RunLengthEncodingExample.swift; path = "run-length-encoding/RunLengthEncodingExample.swift"; sourceTree = "<group>"; };
|
@@ -367,6 +371,7 @@
|
|
367
371
|
E90D61FB1C642E9900C266D3 /* ocr-numbers */,
|
368
372
|
1E9A63371C506EFC00E28AE1 /* octal */,
|
369
373
|
E90D62031C653A5400C266D3 /* palindrome-products */,
|
374
|
+
E95606C01DB926E100EED2F5 /* pangram */,
|
370
375
|
E908CD511C6D7A86005D081E /* pascals-triangle */,
|
371
376
|
1E9A633A1C506EFC00E28AE1 /* perfect-numbers */,
|
372
377
|
1E9A633D1C506EFC00E28AE1 /* phone-number */,
|
@@ -997,6 +1002,15 @@
|
|
997
1002
|
path = bob;
|
998
1003
|
sourceTree = "<group>";
|
999
1004
|
};
|
1005
|
+
E95606C01DB926E100EED2F5 /* pangram */ = {
|
1006
|
+
isa = PBXGroup;
|
1007
|
+
children = (
|
1008
|
+
E95606C21DB9270D00EED2F5 /* PangramExample.swift */,
|
1009
|
+
E95606C41DB9271E00EED2F5 /* PangramTest.swift */,
|
1010
|
+
);
|
1011
|
+
name = pangram;
|
1012
|
+
sourceTree = "<group>";
|
1013
|
+
};
|
1000
1014
|
E99365441D6CE2AF00799C70 /* bowling */ = {
|
1001
1015
|
isa = PBXGroup;
|
1002
1016
|
children = (
|
@@ -1199,6 +1213,7 @@
|
|
1199
1213
|
E9AFA16B1C5EF4DA006AD72D /* MatrixExample.swift in Sources */,
|
1200
1214
|
1E9A63EE1C506EFD00E28AE1 /* WordyExample.swift in Sources */,
|
1201
1215
|
1E9A63C11C506EFD00E28AE1 /* PigLatinTest.swift in Sources */,
|
1216
|
+
E95606C31DB9270D00EED2F5 /* PangramExample.swift in Sources */,
|
1202
1217
|
1E9A63B91C506EFD00E28AE1 /* NucleotideCountTest.swift in Sources */,
|
1203
1218
|
1E9A63BF1C506EFD00E28AE1 /* PhoneNumberTest.swift in Sources */,
|
1204
1219
|
E94BDED01C510E68009318BB /* BinarySearchTest.swift in Sources */,
|
@@ -1260,6 +1275,7 @@
|
|
1260
1275
|
E90D62061C653AC000C266D3 /* PalindromeProductsExample.swift in Sources */,
|
1261
1276
|
1E9A63E91C506EFD00E28AE1 /* TrinaryTest.swift in Sources */,
|
1262
1277
|
1E9A63A11C506EFD00E28AE1 /* GigasecondTest.swift in Sources */,
|
1278
|
+
E95606C51DB9271E00EED2F5 /* PangramTest.swift in Sources */,
|
1263
1279
|
1E9A63911C506EFD00E28AE1 /* AtbashTest.swift in Sources */,
|
1264
1280
|
1E9A63CD1C506EFD00E28AE1 /* RobotNameTest.swift in Sources */,
|
1265
1281
|
1E4CC79F1C90D48300C8BBEB /* DominoesExample.swift in Sources */,
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: trackler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.
|
4
|
+
version: 2.0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Katrina Owen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-11-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubyzip
|
@@ -205,6 +205,7 @@ files:
|
|
205
205
|
- common/exercises/go-counting/metadata.yml
|
206
206
|
- common/exercises/grade-school/description.md
|
207
207
|
- common/exercises/grade-school/metadata.yml
|
208
|
+
- common/exercises/grains/canonical-data.json
|
208
209
|
- common/exercises/grains/description.md
|
209
210
|
- common/exercises/grains/metadata.yml
|
210
211
|
- common/exercises/grep/canonical-data.json
|
@@ -517,6 +518,14 @@ files:
|
|
517
518
|
- tracks/c/config.json
|
518
519
|
- tracks/c/docs/INSTALLATION.md
|
519
520
|
- tracks/c/docs/TESTS.md
|
521
|
+
- tracks/c/exercises/allergies/makefile
|
522
|
+
- tracks/c/exercises/allergies/src/allergies.h
|
523
|
+
- tracks/c/exercises/allergies/src/example.c
|
524
|
+
- tracks/c/exercises/allergies/src/example.h
|
525
|
+
- tracks/c/exercises/allergies/test/test_allergies.c
|
526
|
+
- tracks/c/exercises/allergies/test/vendor/unity.c
|
527
|
+
- tracks/c/exercises/allergies/test/vendor/unity.h
|
528
|
+
- tracks/c/exercises/allergies/test/vendor/unity_internals.h
|
520
529
|
- tracks/c/exercises/anagram/makefile
|
521
530
|
- tracks/c/exercises/anagram/src/anagram.h
|
522
531
|
- tracks/c/exercises/anagram/src/example.c
|
@@ -524,6 +533,13 @@ files:
|
|
524
533
|
- tracks/c/exercises/anagram/test/vendor/unity.c
|
525
534
|
- tracks/c/exercises/anagram/test/vendor/unity.h
|
526
535
|
- tracks/c/exercises/anagram/test/vendor/unity_internals.h
|
536
|
+
- tracks/c/exercises/atbash-cipher/makefile
|
537
|
+
- tracks/c/exercises/atbash-cipher/src/example.c
|
538
|
+
- tracks/c/exercises/atbash-cipher/src/example.h
|
539
|
+
- tracks/c/exercises/atbash-cipher/test/test_atbash_cipher.c
|
540
|
+
- tracks/c/exercises/atbash-cipher/test/vendor/unity.c
|
541
|
+
- tracks/c/exercises/atbash-cipher/test/vendor/unity.h
|
542
|
+
- tracks/c/exercises/atbash-cipher/test/vendor/unity_internals.h
|
527
543
|
- tracks/c/exercises/beer-song/makefile
|
528
544
|
- tracks/c/exercises/beer-song/src/example.c
|
529
545
|
- tracks/c/exercises/beer-song/src/example.h
|
@@ -609,6 +625,13 @@ files:
|
|
609
625
|
- tracks/c/exercises/pangram/test/vendor/unity.c
|
610
626
|
- tracks/c/exercises/pangram/test/vendor/unity.h
|
611
627
|
- tracks/c/exercises/pangram/test/vendor/unity_internals.h
|
628
|
+
- tracks/c/exercises/phone-number/makefile
|
629
|
+
- tracks/c/exercises/phone-number/src/example.c
|
630
|
+
- tracks/c/exercises/phone-number/src/example.h
|
631
|
+
- tracks/c/exercises/phone-number/test/test_phone_number.c
|
632
|
+
- tracks/c/exercises/phone-number/test/vendor/unity.c
|
633
|
+
- tracks/c/exercises/phone-number/test/vendor/unity.h
|
634
|
+
- tracks/c/exercises/phone-number/test/vendor/unity_internals.h
|
612
635
|
- tracks/c/exercises/raindrops/makefile
|
613
636
|
- tracks/c/exercises/raindrops/src/example.c
|
614
637
|
- tracks/c/exercises/raindrops/src/example.h
|
@@ -1265,6 +1288,8 @@ files:
|
|
1265
1288
|
- tracks/csharp/exercises/rail-fence-cipher/RailFenceCipherTest.cs
|
1266
1289
|
- tracks/csharp/exercises/raindrops/Example.cs
|
1267
1290
|
- tracks/csharp/exercises/raindrops/RaindropsTest.cs
|
1291
|
+
- tracks/csharp/exercises/rectangles/Example.cs
|
1292
|
+
- tracks/csharp/exercises/rectangles/RectanglesTest.cs
|
1268
1293
|
- tracks/csharp/exercises/rna-transcription/ComplementTest.cs
|
1269
1294
|
- tracks/csharp/exercises/rna-transcription/Example.cs
|
1270
1295
|
- tracks/csharp/exercises/robot-name/Example.cs
|
@@ -1811,6 +1836,9 @@ files:
|
|
1811
1836
|
- tracks/elixir/exercises/grains/example.exs
|
1812
1837
|
- tracks/elixir/exercises/grains/grains.exs
|
1813
1838
|
- tracks/elixir/exercises/grains/grains_test.exs
|
1839
|
+
- tracks/elixir/exercises/grep/example.exs
|
1840
|
+
- tracks/elixir/exercises/grep/grep.exs
|
1841
|
+
- tracks/elixir/exercises/grep/grep_test.exs
|
1814
1842
|
- tracks/elixir/exercises/hamming/example.exs
|
1815
1843
|
- tracks/elixir/exercises/hamming/hamming.exs
|
1816
1844
|
- tracks/elixir/exercises/hamming/hamming_test.exs
|
@@ -2541,6 +2569,8 @@ files:
|
|
2541
2569
|
- tracks/go/exercises/custom-set/example.go
|
2542
2570
|
- tracks/go/exercises/custom-set/example_gen.go
|
2543
2571
|
- tracks/go/exercises/custom-set/example_slice.go
|
2572
|
+
- tracks/go/exercises/diamond/diamond_test.go
|
2573
|
+
- tracks/go/exercises/diamond/example.go
|
2544
2574
|
- tracks/go/exercises/difference-of-squares/difference_of_squares_test.go
|
2545
2575
|
- tracks/go/exercises/difference-of-squares/example.go
|
2546
2576
|
- tracks/go/exercises/diffie-hellman/diffie_hellman_test.go
|
@@ -4416,6 +4446,9 @@ files:
|
|
4416
4446
|
- tracks/objective-c/exercises/nucleotide-count/NucleotideCountExample.h
|
4417
4447
|
- tracks/objective-c/exercises/nucleotide-count/NucleotideCountExample.m
|
4418
4448
|
- tracks/objective-c/exercises/nucleotide-count/NucleotideCountTest.m
|
4449
|
+
- tracks/objective-c/exercises/pangram/PangramExample.h
|
4450
|
+
- tracks/objective-c/exercises/pangram/PangramExample.m
|
4451
|
+
- tracks/objective-c/exercises/pangram/PangramTest.m
|
4419
4452
|
- tracks/objective-c/exercises/perfect-numbers/PerfectNumbersExample.h
|
4420
4453
|
- tracks/objective-c/exercises/perfect-numbers/PerfectNumbersExample.m
|
4421
4454
|
- tracks/objective-c/exercises/perfect-numbers/PerfectNumbersTest.m
|
@@ -4852,6 +4885,8 @@ files:
|
|
4852
4885
|
- tracks/php/exercises/accumulate/example.php
|
4853
4886
|
- tracks/php/exercises/acronym/acronym_test.php
|
4854
4887
|
- tracks/php/exercises/acronym/example.php
|
4888
|
+
- tracks/php/exercises/allergies/allergies_test.php
|
4889
|
+
- tracks/php/exercises/allergies/example.php
|
4855
4890
|
- tracks/php/exercises/anagram/anagram_test.php
|
4856
4891
|
- tracks/php/exercises/anagram/example.php
|
4857
4892
|
- tracks/php/exercises/atbash-cipher/atbash-cipher_test.php
|
@@ -4876,6 +4911,8 @@ files:
|
|
4876
4911
|
- tracks/php/exercises/connect/example.php
|
4877
4912
|
- tracks/php/exercises/difference-of-squares/difference-of-squares_test.php
|
4878
4913
|
- tracks/php/exercises/difference-of-squares/example.php
|
4914
|
+
- tracks/php/exercises/etl/etl_test.php
|
4915
|
+
- tracks/php/exercises/etl/example.php
|
4879
4916
|
- tracks/php/exercises/gigasecond/example.php
|
4880
4917
|
- tracks/php/exercises/gigasecond/gigasecond_test.php
|
4881
4918
|
- tracks/php/exercises/hamming/example.php
|
@@ -4892,6 +4929,8 @@ files:
|
|
4892
4929
|
- tracks/php/exercises/leap/leap_test.php
|
4893
4930
|
- tracks/php/exercises/minesweeper/example.php
|
4894
4931
|
- tracks/php/exercises/minesweeper/minesweeper_test.php
|
4932
|
+
- tracks/php/exercises/nucleotide-count/example.php
|
4933
|
+
- tracks/php/exercises/nucleotide-count/nucleotide-count_test.php
|
4895
4934
|
- tracks/php/exercises/pangram/example.php
|
4896
4935
|
- tracks/php/exercises/pangram/pangram_test.php
|
4897
4936
|
- tracks/php/exercises/phone-number/example.php
|
@@ -4906,6 +4945,10 @@ files:
|
|
4906
4945
|
- tracks/php/exercises/robot-name/robot-name_test.php
|
4907
4946
|
- tracks/php/exercises/roman-numerals/example.php
|
4908
4947
|
- tracks/php/exercises/roman-numerals/roman-numerals_test.php
|
4948
|
+
- tracks/php/exercises/space-age/example.php
|
4949
|
+
- tracks/php/exercises/space-age/space-age_test.php
|
4950
|
+
- tracks/php/exercises/triangle/example.php
|
4951
|
+
- tracks/php/exercises/triangle/triangle_test.php
|
4909
4952
|
- tracks/php/exercises/trinary/example.php
|
4910
4953
|
- tracks/php/exercises/trinary/trinary_test.php
|
4911
4954
|
- tracks/php/exercises/variable-length-quantity/example.php
|
@@ -5098,6 +5141,8 @@ files:
|
|
5098
5141
|
- tracks/python/exercises/clock/example.py
|
5099
5142
|
- tracks/python/exercises/crypto-square/crypto_square_test.py
|
5100
5143
|
- tracks/python/exercises/crypto-square/example.py
|
5144
|
+
- tracks/python/exercises/diamond/diamond_test.py
|
5145
|
+
- tracks/python/exercises/diamond/example.py
|
5101
5146
|
- tracks/python/exercises/difference-of-squares/difference_of_squares_test.py
|
5102
5147
|
- tracks/python/exercises/difference-of-squares/example.py
|
5103
5148
|
- tracks/python/exercises/etl/etl_test.py
|
@@ -5125,6 +5170,12 @@ files:
|
|
5125
5170
|
- tracks/python/exercises/largest-series-product/largest_series_product_test.py
|
5126
5171
|
- tracks/python/exercises/leap/example.py
|
5127
5172
|
- tracks/python/exercises/leap/leap_test.py
|
5173
|
+
- tracks/python/exercises/linked-list/example.py
|
5174
|
+
- tracks/python/exercises/linked-list/linked_list.py
|
5175
|
+
- tracks/python/exercises/linked-list/linked_list_test.py
|
5176
|
+
- tracks/python/exercises/list-ops/example.py
|
5177
|
+
- tracks/python/exercises/list-ops/list_ops.py
|
5178
|
+
- tracks/python/exercises/list-ops/list_ops_test.py
|
5128
5179
|
- tracks/python/exercises/luhn/example.py
|
5129
5180
|
- tracks/python/exercises/luhn/luhn_test.py
|
5130
5181
|
- tracks/python/exercises/matrix/example.py
|
@@ -5382,8 +5433,10 @@ files:
|
|
5382
5433
|
- tracks/ruby/exercises/binary/example.tt
|
5383
5434
|
- tracks/ruby/exercises/bob/bob_test.rb
|
5384
5435
|
- tracks/ruby/exercises/bob/example.rb
|
5436
|
+
- tracks/ruby/exercises/bowling/.version
|
5385
5437
|
- tracks/ruby/exercises/bowling/bowling_test.rb
|
5386
5438
|
- tracks/ruby/exercises/bowling/example.rb
|
5439
|
+
- tracks/ruby/exercises/bowling/example.tt
|
5387
5440
|
- tracks/ruby/exercises/bracket-push/.version
|
5388
5441
|
- tracks/ruby/exercises/bracket-push/bracket_push_test.rb
|
5389
5442
|
- tracks/ruby/exercises/bracket-push/example.rb
|
@@ -5550,6 +5603,14 @@ files:
|
|
5550
5603
|
- tracks/ruby/exercises/strain/strain_test.rb
|
5551
5604
|
- tracks/ruby/exercises/sum-of-multiples/example.rb
|
5552
5605
|
- tracks/ruby/exercises/sum-of-multiples/sum_of_multiples_test.rb
|
5606
|
+
- tracks/ruby/exercises/tournament/.version
|
5607
|
+
- tracks/ruby/exercises/tournament/example.rb
|
5608
|
+
- tracks/ruby/exercises/tournament/example.tt
|
5609
|
+
- tracks/ruby/exercises/tournament/tournament_test.rb
|
5610
|
+
- tracks/ruby/exercises/transpose/.version
|
5611
|
+
- tracks/ruby/exercises/transpose/example.rb
|
5612
|
+
- tracks/ruby/exercises/transpose/example.tt
|
5613
|
+
- tracks/ruby/exercises/transpose/transpose_test.rb
|
5553
5614
|
- tracks/ruby/exercises/triangle/example.rb
|
5554
5615
|
- tracks/ruby/exercises/triangle/triangle_test.rb
|
5555
5616
|
- tracks/ruby/exercises/trinary/example.rb
|
@@ -5573,6 +5634,7 @@ files:
|
|
5573
5634
|
- tracks/ruby/lib/anagram_cases.rb
|
5574
5635
|
- tracks/ruby/lib/binary_cases.rb
|
5575
5636
|
- tracks/ruby/lib/bookkeeping.md
|
5637
|
+
- tracks/ruby/lib/bowling_cases.rb
|
5576
5638
|
- tracks/ruby/lib/bracket_push_cases.rb
|
5577
5639
|
- tracks/ruby/lib/clock_cases.rb
|
5578
5640
|
- tracks/ruby/lib/connect_cases.rb
|
@@ -5594,6 +5656,8 @@ files:
|
|
5594
5656
|
- tracks/ruby/lib/roman_numerals_cases.rb
|
5595
5657
|
- tracks/ruby/lib/run_length_encoding_cases.rb
|
5596
5658
|
- tracks/ruby/lib/sieve_cases.rb
|
5659
|
+
- tracks/ruby/lib/tournament_cases.rb
|
5660
|
+
- tracks/ruby/lib/transpose_cases.rb
|
5597
5661
|
- tracks/ruby/lib/two_bucket_cases.rb
|
5598
5662
|
- tracks/ruby/lib/word_count_cases.rb
|
5599
5663
|
- tracks/rust/.git
|
@@ -5639,6 +5703,10 @@ files:
|
|
5639
5703
|
- tracks/rust/exercises/bob/Cargo.toml
|
5640
5704
|
- tracks/rust/exercises/bob/example.rs
|
5641
5705
|
- tracks/rust/exercises/bob/tests/bob.rs
|
5706
|
+
- tracks/rust/exercises/bowling/.gitignore
|
5707
|
+
- tracks/rust/exercises/bowling/Cargo.toml
|
5708
|
+
- tracks/rust/exercises/bowling/example.rs
|
5709
|
+
- tracks/rust/exercises/bowling/tests/bowling.rs
|
5642
5710
|
- tracks/rust/exercises/bracket-push/Cargo.lock
|
5643
5711
|
- tracks/rust/exercises/bracket-push/Cargo.toml
|
5644
5712
|
- tracks/rust/exercises/bracket-push/HINTS.md
|
@@ -5677,6 +5745,11 @@ files:
|
|
5677
5745
|
- tracks/rust/exercises/grade-school/Cargo.toml
|
5678
5746
|
- tracks/rust/exercises/grade-school/example.rs
|
5679
5747
|
- tracks/rust/exercises/grade-school/tests/grade-school.rs
|
5748
|
+
- tracks/rust/exercises/grains/.gitignore
|
5749
|
+
- tracks/rust/exercises/grains/Cargo.toml
|
5750
|
+
- tracks/rust/exercises/grains/example.rs
|
5751
|
+
- tracks/rust/exercises/grains/src/lib.rs
|
5752
|
+
- tracks/rust/exercises/grains/tests/grains.rs
|
5680
5753
|
- tracks/rust/exercises/hamming/Cargo.lock
|
5681
5754
|
- tracks/rust/exercises/hamming/Cargo.toml
|
5682
5755
|
- tracks/rust/exercises/hamming/example.rs
|
@@ -5834,6 +5907,10 @@ files:
|
|
5834
5907
|
- tracks/scala/exercises/allergies/example.scala
|
5835
5908
|
- tracks/scala/exercises/allergies/src/main/scala/.keep
|
5836
5909
|
- tracks/scala/exercises/allergies/src/test/scala/allergies_test.scala
|
5910
|
+
- tracks/scala/exercises/alphametics/build.sbt
|
5911
|
+
- tracks/scala/exercises/alphametics/example.scala
|
5912
|
+
- tracks/scala/exercises/alphametics/src/main/scala/.keep
|
5913
|
+
- tracks/scala/exercises/alphametics/src/test/scala/AlphameticsTest.scala
|
5837
5914
|
- tracks/scala/exercises/anagram/build.sbt
|
5838
5915
|
- tracks/scala/exercises/anagram/example.scala
|
5839
5916
|
- tracks/scala/exercises/anagram/src/main/scala/.keep
|
@@ -5858,6 +5935,10 @@ files:
|
|
5858
5935
|
- tracks/scala/exercises/bob/example.scala
|
5859
5936
|
- tracks/scala/exercises/bob/src/main/scala/.keep
|
5860
5937
|
- tracks/scala/exercises/bob/src/test/scala/bob_test.scala
|
5938
|
+
- tracks/scala/exercises/bowling/Example.scala
|
5939
|
+
- tracks/scala/exercises/bowling/build.sbt
|
5940
|
+
- tracks/scala/exercises/bowling/src/main/scala/Bowling.scala
|
5941
|
+
- tracks/scala/exercises/bowling/src/test/scala/BowlingSuite.scala
|
5861
5942
|
- tracks/scala/exercises/bracket-push/build.sbt
|
5862
5943
|
- tracks/scala/exercises/bracket-push/example.scala
|
5863
5944
|
- tracks/scala/exercises/bracket-push/src/main/scala/.keep
|
@@ -5870,6 +5951,7 @@ files:
|
|
5870
5951
|
- tracks/scala/exercises/clock/example.scala
|
5871
5952
|
- tracks/scala/exercises/clock/src/main/scala/.keep
|
5872
5953
|
- tracks/scala/exercises/clock/src/test/scala/ClockTest.scala
|
5954
|
+
- tracks/scala/exercises/connect/README.md
|
5873
5955
|
- tracks/scala/exercises/connect/build.sbt
|
5874
5956
|
- tracks/scala/exercises/connect/example.scala
|
5875
5957
|
- tracks/scala/exercises/connect/src/main/scala/.keep
|
@@ -5877,7 +5959,7 @@ files:
|
|
5877
5959
|
- tracks/scala/exercises/crypto-square/build.sbt
|
5878
5960
|
- tracks/scala/exercises/crypto-square/example.scala
|
5879
5961
|
- tracks/scala/exercises/crypto-square/src/main/scala/.keep
|
5880
|
-
- tracks/scala/exercises/crypto-square/src/test/scala/
|
5962
|
+
- tracks/scala/exercises/crypto-square/src/test/scala/CryptoSquareTest.scala
|
5881
5963
|
- tracks/scala/exercises/custom-set/build.sbt
|
5882
5964
|
- tracks/scala/exercises/custom-set/example.scala
|
5883
5965
|
- tracks/scala/exercises/custom-set/src/main/scala/.keep
|
@@ -6111,6 +6193,7 @@ files:
|
|
6111
6193
|
- tracks/scala/project/build.properties
|
6112
6194
|
- tracks/scala/testgen/build.sbt
|
6113
6195
|
- tracks/scala/testgen/src/main/scala/AllYourBaseTestGenerator.scala
|
6196
|
+
- tracks/scala/testgen/src/main/scala/BowlingTestGenerator.scala
|
6114
6197
|
- tracks/scala/testgen/src/main/scala/BracketPushTestGenerator.scala
|
6115
6198
|
- tracks/scala/testgen/src/main/scala/CustomSetTestGenerator.scala
|
6116
6199
|
- tracks/scala/testgen/src/main/scala/PangramsTestGenerator.scala
|
@@ -6181,8 +6264,15 @@ files:
|
|
6181
6264
|
- tracks/sml/exercises/anagram/test_anagram.sml
|
6182
6265
|
- tracks/sml/exercises/binary/example.sml
|
6183
6266
|
- tracks/sml/exercises/binary/test_binary.sml
|
6267
|
+
- tracks/sml/exercises/flatten-array/example.sml
|
6268
|
+
- tracks/sml/exercises/flatten-array/test_flatten_array.sml
|
6184
6269
|
- tracks/sml/exercises/hamming/example.sml
|
6185
6270
|
- tracks/sml/exercises/hamming/test_hamming.sml
|
6271
|
+
- tracks/sml/exercises/nth-prime/example.sml
|
6272
|
+
- tracks/sml/exercises/nth-prime/test_nth_prime.sml
|
6273
|
+
- tracks/sml/exercises/raindrops/example.sml
|
6274
|
+
- tracks/sml/exercises/raindrops/raindrops.sml
|
6275
|
+
- tracks/sml/exercises/raindrops/test_raindrops.sml
|
6186
6276
|
- tracks/sml/img/icon.png
|
6187
6277
|
- tracks/swift/.git
|
6188
6278
|
- tracks/swift/.gitignore
|
@@ -6281,6 +6371,8 @@ files:
|
|
6281
6371
|
- tracks/swift/exercises/octal/OctalTest.swift
|
6282
6372
|
- tracks/swift/exercises/palindrome-products/PalindromeProductsExample.swift
|
6283
6373
|
- tracks/swift/exercises/palindrome-products/PalindromeProductsTest.swift
|
6374
|
+
- tracks/swift/exercises/pangram/PangramExample.swift
|
6375
|
+
- tracks/swift/exercises/pangram/PangramTest.swift
|
6284
6376
|
- tracks/swift/exercises/pascals-triangle/PascalsTriangleExample.swift
|
6285
6377
|
- tracks/swift/exercises/pascals-triangle/PascalsTriangleTest.swift
|
6286
6378
|
- tracks/swift/exercises/perfect-numbers/PerfectNumbersExample.swift
|