From 0d8afdd2869876dadf3d7a962467e44cce7c98db Mon Sep 17 00:00:00 2001 From: Sam Vervaeck Date: Mon, 15 Jun 2020 21:40:13 +0200 Subject: [PATCH] Fix multiple issues in test infrastructure and clean it up --- .test-storage/aliases/lkg | 1 - ...c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 | 1 - ...e4a4e042a07c7993c319c249133d418c48e6b06ef8 | 1 - ...8b5fb17a4c7627748d4eba133a1970c3ff4e078ffd | 1 - ...c8e335aff346a2f71147852ff3546f7f069f37973a | 1 - ...667a7a91607cc6695f97ed11807e48c3d6e7870a83 | 1 - ...6fa4bc6644888d51be0555c07cc59426bb76a2abf7 | 1 - ...15cce0e8df97d6af0c081a82f3236eae595a6a968a | 1 - ...da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c | 1 - ...8a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 | 1 - ...6816a823cc665f84458402f294ca0ea1883f8254f7 | 1 - ...3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad | 1 - ...cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 | 1 - ...ad3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 | 1 - ...215a71ad6a33ecb5b2bd08c0ceab0557c361165309 | 1 - ...cf7454612131254e5055941add4528de0bee480c96 | 1 - ...08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 | 1 - ...e488142e9c88145340f12f4f4c6075428032558812 | 1 - ...46c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 | 1 - ...648e0addd192b0c46cc2490564cbecfc7732226f12 | 1 - ...ce6342368ba4d6f72123b491065f9f6cfbceb20241 | 1 - ...3a2d001b496dcb40ae2b06975810e6a7f9728654f2 | 1 - ...7454c489b8202bd2b57663f011e773969fd26d971e | 1 - ...87aa182718344028a964386a759b25c49ca8fb5158 | 1 - ...e7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d | 1 - ...c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed | 1 - ...1a3a539c80320d3da6d2bef9193ebfd1cff17eea23 | 1 - ...32cd85685ab7620469241e967aa55cad5525fc92df | 1 - ...b1f8725fc25c065f3dd74bfc4d0bd66c623262f15d | 1 - ...533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e | 1 - ...f7987d9b527e68df4ae7c42e13d6105414e5ae322c | 1 - ...ccb270f459a8551acbb9c96f366226dd8cb03ebf7d | 1 - ...f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce | 1 - ...0f3b6bd04b5371cc75e041c05040cacc7571af604f | 1 - ...421cf9f00ed054aa6e316a4d64f0bd7a57a015374d | 1 - ...7e9b8e6aeae86c16820c30d6888a40528ceac6a009 | 1 - ...36a94b02c7134954c0c8961235e8eaa8f4050dc3d2 | 1 - ...0af44ad2d44579bf5718c4efd7063147bc579f3006 | 1 - ...b34df48da45f18a5d07c91d67702f3eb020217428e | 1 - ...d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 | 1 - ...651951d79f2b42f304dd936043116dbd06d019fb4c | 1 - ...5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 | 1 - ...5c7c6f581179dbbcc109d82292e79dda437617914b | 1 - ...a8caa5f9985790a7e252d21e00b9906107058f2463 | 1 - ...836f419612d5c23b197d8692cb185f7ff63ac16509 | 1 - ...b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 | 1 - ...74b97ee6594527388d5b7ac20ff322821fca816f40 | 1 - ...4ca34e0a007e65907345a5169af4def215287a4963 | 1 - ...a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 | 1 - ...26c3cd7956ef70b582564b417809135806711ff41f | 1 - ...08765efedfd61a3debe98319ac87259481e5560c1a | 1 - ...50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 | 1 - ...31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d | 1 - ...c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 | 1 - ...e4a4e042a07c7993c319c249133d418c48e6b06ef8 | 1 - ...8b5fb17a4c7627748d4eba133a1970c3ff4e078ffd | 1 - ...c8e335aff346a2f71147852ff3546f7f069f37973a | 1 - ...667a7a91607cc6695f97ed11807e48c3d6e7870a83 | 1 - ...6fa4bc6644888d51be0555c07cc59426bb76a2abf7 | 1 - ...15cce0e8df97d6af0c081a82f3236eae595a6a968a | 1 - ...da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c | 1 - ...8a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 | 1 - ...6816a823cc665f84458402f294ca0ea1883f8254f7 | 1 - ...3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad | 1 - ...cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 | 1 - ...ad3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 | 1 - ...215a71ad6a33ecb5b2bd08c0ceab0557c361165309 | 1 - ...cf7454612131254e5055941add4528de0bee480c96 | 1 - ...08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 | 1 - ...e488142e9c88145340f12f4f4c6075428032558812 | 1 - ...46c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 | 1 - ...648e0addd192b0c46cc2490564cbecfc7732226f12 | 1 - ...ce6342368ba4d6f72123b491065f9f6cfbceb20241 | 1 - ...3a2d001b496dcb40ae2b06975810e6a7f9728654f2 | 1 - ...7454c489b8202bd2b57663f011e773969fd26d971e | 1 - ...87aa182718344028a964386a759b25c49ca8fb5158 | 1 - ...e7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d | 1 - ...c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed | 1 - ...1a3a539c80320d3da6d2bef9193ebfd1cff17eea23 | 1 - ...32cd85685ab7620469241e967aa55cad5525fc92df | 1 - ...b1f8725fc25c065f3dd74bfc4d0bd66c623262f15d | 1 - ...533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e | 1 - ...f7987d9b527e68df4ae7c42e13d6105414e5ae322c | 1 - ...ccb270f459a8551acbb9c96f366226dd8cb03ebf7d | 1 - ...f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce | 1 - ...0f3b6bd04b5371cc75e041c05040cacc7571af604f | 1 - ...421cf9f00ed054aa6e316a4d64f0bd7a57a015374d | 1 - ...7e9b8e6aeae86c16820c30d6888a40528ceac6a009 | 1 - ...36a94b02c7134954c0c8961235e8eaa8f4050dc3d2 | 1 - ...0af44ad2d44579bf5718c4efd7063147bc579f3006 | 1 - ...b34df48da45f18a5d07c91d67702f3eb020217428e | 1 - ...d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 | 1 - ...651951d79f2b42f304dd936043116dbd06d019fb4c | 1 - ...5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 | 1 - ...5c7c6f581179dbbcc109d82292e79dda437617914b | 1 - ...a8caa5f9985790a7e252d21e00b9906107058f2463 | 1 - ...836f419612d5c23b197d8692cb185f7ff63ac16509 | 1 - ...b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 | 1 - ...74b97ee6594527388d5b7ac20ff322821fca816f40 | 1 - ...4ca34e0a007e65907345a5169af4def215287a4963 | 1 - ...a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 | 1 - ...26c3cd7956ef70b582564b417809135806711ff41f | 1 - ...08765efedfd61a3debe98319ac87259481e5560c1a | 1 - ...50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 | 1 - ...31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d | 1 - package.json | 2 +- src/ast-spec.ts | 2 +- src/ast.ts | 2 +- src/bin/bolt-test.ts | 392 ++++++++++-------- test-storage/aliases/lkg | 1 + ...e5f087afcd43bc2fa6eb4125ed0b21913f0d228e3f | 1 + 111 files changed, 230 insertions(+), 275 deletions(-) delete mode 100644 .test-storage/aliases/lkg delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/0bb969f4f6e6fb9eea6901c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/0e326768f197cfd975e226e4a4e042a07c7993c319c249133d418c48e6b06ef8 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/12f351acdb338f0eed44148b5fb17a4c7627748d4eba133a1970c3ff4e078ffd delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/15d598ddfe134175289075c8e335aff346a2f71147852ff3546f7f069f37973a delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/17df980c6fea7a5768d260667a7a91607cc6695f97ed11807e48c3d6e7870a83 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/1981881b9eb9c8b8e6309b6fa4bc6644888d51be0555c07cc59426bb76a2abf7 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2579b85c3ef68a9e6024f115cce0e8df97d6af0c081a82f3236eae595a6a968a delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2b104a751103b04d1d75a2da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2dd117b5f9297969150f328a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4884100bba1463661e51bd6816a823cc665f84458402f294ca0ea1883f8254f7 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/48b4cf3bff164fe5ff276a3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/499252de561b141f856e69cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4cc7fbc78f2710cb7be12ead3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4ebc89e66ce704d1d6aba6215a71ad6a33ecb5b2bd08c0ceab0557c361165309 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/52eff5a856bab6d89069cdcf7454612131254e5055941add4528de0bee480c96 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/568c2347a8f8601c72ceff08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/595a5d590e038d42bca273e488142e9c88145340f12f4f4c6075428032558812 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/59982e5d757ca21b70d86046c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/63407ec05ff2ac0430265e648e0addd192b0c46cc2490564cbecfc7732226f12 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/63a7a8baf0292f93814f44ce6342368ba4d6f72123b491065f9f6cfbceb20241 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/69df08e0d942240862e2553a2d001b496dcb40ae2b06975810e6a7f9728654f2 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/75575f31489de62ec52ab77454c489b8202bd2b57663f011e773969fd26d971e delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7c55dbfe7a4e71f5f1142287aa182718344028a964386a759b25c49ca8fb5158 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7c588ac15af7c45aadc6aee7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7cef6b59ca312a88e36667c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7d7f972f468aa014fa2e741a3a539c80320d3da6d2bef9193ebfd1cff17eea23 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/8500ab658826a55f9c6eab32cd85685ab7620469241e967aa55cad5525fc92df delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/94e9fa2b82687e931f6efeb1f8725fc25c065f3dd74bfc4d0bd66c623262f15d delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/9d3f6eb4a1802bf5f091fa533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/9ec78cce28dc5df3d67e5ef7987d9b527e68df4ae7c42e13d6105414e5ae322c delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a3365e07b382729afd1e7cccb270f459a8551acbb9c96f366226dd8cb03ebf7d delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a37ab5e8c08d826da61c90f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a80b4056977856e39877810f3b6bd04b5371cc75e041c05040cacc7571af604f delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/ae56b91428a69e02ed58be421cf9f00ed054aa6e316a4d64f0bd7a57a015374d delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/aec839fe22c98a0f2b31717e9b8e6aeae86c16820c30d6888a40528ceac6a009 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/b48ddbce90ec393ffd245236a94b02c7134954c0c8961235e8eaa8f4050dc3d2 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/b831ec3e6af064f0c9318b0af44ad2d44579bf5718c4efd7063147bc579f3006 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c203a31f42c799873febf7b34df48da45f18a5d07c91d67702f3eb020217428e delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c3e3220e1f877217bca870d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c826f8db2b8c8b57b93843651951d79f2b42f304dd936043116dbd06d019fb4c delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/cb6b58ac199e78e73e290e5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d5a60b97969c3bf62d27845c7c6f581179dbbcc109d82292e79dda437617914b delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d7680fc724d967ce8d80dda8caa5f9985790a7e252d21e00b9906107058f2463 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d8ae5b373b69472c1208bc836f419612d5c23b197d8692cb185f7ff63ac16509 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/dc9ed16c194d73ebd92f71b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/de491be437f1dfff0a39f074b97ee6594527388d5b7ac20ff322821fca816f40 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/e5b8fcbfe810f9e8ceb5294ca34e0a007e65907345a5169af4def215287a4963 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/e8eafefabd272f9c511d97a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/ed7931d743c2e30de8e36626c3cd7956ef70b582564b417809135806711ff41f delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/f42290c65de62f7b22c77408765efedfd61a3debe98319ac87259481e5560c1a delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/f5e5e2201ed25fc6894b5f50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 delete mode 100644 .test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/feb452354ed6939e5bdc3e31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d delete mode 100644 .test-storage/tests/0bb969f4f6e6fb9eea6901c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 delete mode 100644 .test-storage/tests/0e326768f197cfd975e226e4a4e042a07c7993c319c249133d418c48e6b06ef8 delete mode 100644 .test-storage/tests/12f351acdb338f0eed44148b5fb17a4c7627748d4eba133a1970c3ff4e078ffd delete mode 100644 .test-storage/tests/15d598ddfe134175289075c8e335aff346a2f71147852ff3546f7f069f37973a delete mode 100644 .test-storage/tests/17df980c6fea7a5768d260667a7a91607cc6695f97ed11807e48c3d6e7870a83 delete mode 100644 .test-storage/tests/1981881b9eb9c8b8e6309b6fa4bc6644888d51be0555c07cc59426bb76a2abf7 delete mode 100644 .test-storage/tests/2579b85c3ef68a9e6024f115cce0e8df97d6af0c081a82f3236eae595a6a968a delete mode 100644 .test-storage/tests/2b104a751103b04d1d75a2da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c delete mode 100644 .test-storage/tests/2dd117b5f9297969150f328a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 delete mode 100644 .test-storage/tests/4884100bba1463661e51bd6816a823cc665f84458402f294ca0ea1883f8254f7 delete mode 100644 .test-storage/tests/48b4cf3bff164fe5ff276a3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad delete mode 100644 .test-storage/tests/499252de561b141f856e69cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 delete mode 100644 .test-storage/tests/4cc7fbc78f2710cb7be12ead3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 delete mode 100644 .test-storage/tests/4ebc89e66ce704d1d6aba6215a71ad6a33ecb5b2bd08c0ceab0557c361165309 delete mode 100644 .test-storage/tests/52eff5a856bab6d89069cdcf7454612131254e5055941add4528de0bee480c96 delete mode 100644 .test-storage/tests/568c2347a8f8601c72ceff08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 delete mode 100644 .test-storage/tests/595a5d590e038d42bca273e488142e9c88145340f12f4f4c6075428032558812 delete mode 100644 .test-storage/tests/59982e5d757ca21b70d86046c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 delete mode 100644 .test-storage/tests/63407ec05ff2ac0430265e648e0addd192b0c46cc2490564cbecfc7732226f12 delete mode 100644 .test-storage/tests/63a7a8baf0292f93814f44ce6342368ba4d6f72123b491065f9f6cfbceb20241 delete mode 100644 .test-storage/tests/69df08e0d942240862e2553a2d001b496dcb40ae2b06975810e6a7f9728654f2 delete mode 100644 .test-storage/tests/75575f31489de62ec52ab77454c489b8202bd2b57663f011e773969fd26d971e delete mode 100644 .test-storage/tests/7c55dbfe7a4e71f5f1142287aa182718344028a964386a759b25c49ca8fb5158 delete mode 100644 .test-storage/tests/7c588ac15af7c45aadc6aee7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d delete mode 100644 .test-storage/tests/7cef6b59ca312a88e36667c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed delete mode 100644 .test-storage/tests/7d7f972f468aa014fa2e741a3a539c80320d3da6d2bef9193ebfd1cff17eea23 delete mode 100644 .test-storage/tests/8500ab658826a55f9c6eab32cd85685ab7620469241e967aa55cad5525fc92df delete mode 100644 .test-storage/tests/94e9fa2b82687e931f6efeb1f8725fc25c065f3dd74bfc4d0bd66c623262f15d delete mode 100644 .test-storage/tests/9d3f6eb4a1802bf5f091fa533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e delete mode 100644 .test-storage/tests/9ec78cce28dc5df3d67e5ef7987d9b527e68df4ae7c42e13d6105414e5ae322c delete mode 100644 .test-storage/tests/a3365e07b382729afd1e7cccb270f459a8551acbb9c96f366226dd8cb03ebf7d delete mode 100644 .test-storage/tests/a37ab5e8c08d826da61c90f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce delete mode 100644 .test-storage/tests/a80b4056977856e39877810f3b6bd04b5371cc75e041c05040cacc7571af604f delete mode 100644 .test-storage/tests/ae56b91428a69e02ed58be421cf9f00ed054aa6e316a4d64f0bd7a57a015374d delete mode 100644 .test-storage/tests/aec839fe22c98a0f2b31717e9b8e6aeae86c16820c30d6888a40528ceac6a009 delete mode 100644 .test-storage/tests/b48ddbce90ec393ffd245236a94b02c7134954c0c8961235e8eaa8f4050dc3d2 delete mode 100644 .test-storage/tests/b831ec3e6af064f0c9318b0af44ad2d44579bf5718c4efd7063147bc579f3006 delete mode 100644 .test-storage/tests/c203a31f42c799873febf7b34df48da45f18a5d07c91d67702f3eb020217428e delete mode 100644 .test-storage/tests/c3e3220e1f877217bca870d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 delete mode 100644 .test-storage/tests/c826f8db2b8c8b57b93843651951d79f2b42f304dd936043116dbd06d019fb4c delete mode 100644 .test-storage/tests/cb6b58ac199e78e73e290e5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 delete mode 100644 .test-storage/tests/d5a60b97969c3bf62d27845c7c6f581179dbbcc109d82292e79dda437617914b delete mode 100644 .test-storage/tests/d7680fc724d967ce8d80dda8caa5f9985790a7e252d21e00b9906107058f2463 delete mode 100644 .test-storage/tests/d8ae5b373b69472c1208bc836f419612d5c23b197d8692cb185f7ff63ac16509 delete mode 100644 .test-storage/tests/dc9ed16c194d73ebd92f71b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 delete mode 100644 .test-storage/tests/de491be437f1dfff0a39f074b97ee6594527388d5b7ac20ff322821fca816f40 delete mode 100644 .test-storage/tests/e5b8fcbfe810f9e8ceb5294ca34e0a007e65907345a5169af4def215287a4963 delete mode 100644 .test-storage/tests/e8eafefabd272f9c511d97a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 delete mode 100644 .test-storage/tests/ed7931d743c2e30de8e36626c3cd7956ef70b582564b417809135806711ff41f delete mode 100644 .test-storage/tests/f42290c65de62f7b22c77408765efedfd61a3debe98319ac87259481e5560c1a delete mode 100644 .test-storage/tests/f5e5e2201ed25fc6894b5f50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 delete mode 100644 .test-storage/tests/feb452354ed6939e5bdc3e31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d create mode 100644 test-storage/aliases/lkg create mode 100644 test-storage/snapshots/533381409c88be6a3b19b035f6082831c15985315e186ea2430d1bc8d1f984818e1cd07f960756cbbb8f68e5f087afcd43bc2fa6eb4125ed0b21913f0d228e3f diff --git a/.test-storage/aliases/lkg b/.test-storage/aliases/lkg deleted file mode 100644 index 9aa43e7c0..000000000 --- a/.test-storage/aliases/lkg +++ /dev/null @@ -1 +0,0 @@ -58030ea2-b2d4-45e1-96f5-6b21369a4564 \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/0bb969f4f6e6fb9eea6901c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/0bb969f4f6e6fb9eea6901c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 deleted file mode 100644 index be2ff1be7..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/0bb969f4f6e6fb9eea6901c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,11,1]},{"__type":"classinstance","name":"TextPos","args":[11,11,4]}]},"Bar",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,11,1]},{"__type":"classinstance","name":"TextPos","args":[11,11,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/0e326768f197cfd975e226e4a4e042a07c7993c319c249133d418c48e6b06ef8 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/0e326768f197cfd975e226e4a4e042a07c7993c319c249133d418c48e6b06ef8 deleted file mode 100644 index df085f79d..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/0e326768f197cfd975e226e4a4e042a07c7993c319c249133d418c48e6b06ef8 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[23,31,1]},{"__type":"classinstance","name":"TextPos","args":[27,31,5]}]},{"__type":"bigint","value":"10"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[23,31,1]},{"__type":"classinstance","name":"TextPos","args":[27,31,5]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/12f351acdb338f0eed44148b5fb17a4c7627748d4eba133a1970c3ff4e078ffd b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/12f351acdb338f0eed44148b5fb17a4c7627748d4eba133a1970c3ff4e078ffd deleted file mode 100644 index c5dda7d34..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/12f351acdb338f0eed44148b5fb17a4c7627748d4eba133a1970c3ff4e078ffd +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[18,17,1]},{"__type":"classinstance","name":"TextPos","args":[19,17,2]}]},{"__type":"bigint","value":"8"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[18,17,1]},{"__type":"classinstance","name":"TextPos","args":[19,17,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/15d598ddfe134175289075c8e335aff346a2f71147852ff3546f7f069f37973a b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/15d598ddfe134175289075c8e335aff346a2f71147852ff3546f7f069f37973a deleted file mode 100644 index 450449a05..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/15d598ddfe134175289075c8e335aff346a2f71147852ff3546f7f069f37973a +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,58,1]},{"__type":"classinstance","name":"TextPos","args":[23,58,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,58,1]},{"__type":"classinstance","name":"TextPos","args":[23,58,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[23,58,2]},{"__type":"classinstance","name":"TextPos","args":[27,58,6]}]},"o706",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[23,58,2]},{"__type":"classinstance","name":"TextPos","args":[27,58,6]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/17df980c6fea7a5768d260667a7a91607cc6695f97ed11807e48c3d6e7870a83 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/17df980c6fea7a5768d260667a7a91607cc6695f97ed11807e48c3d6e7870a83 deleted file mode 100644 index b06723e70..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/17df980c6fea7a5768d260667a7a91607cc6695f97ed11807e48c3d6e7870a83 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,59,1]},{"__type":"classinstance","name":"TextPos","args":[29,59,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,59,1]},{"__type":"classinstance","name":"TextPos","args":[29,59,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[29,59,2]},{"__type":"classinstance","name":"TextPos","args":[35,59,8]}]},"o12345",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[29,59,2]},{"__type":"classinstance","name":"TextPos","args":[35,59,8]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/1981881b9eb9c8b8e6309b6fa4bc6644888d51be0555c07cc59426bb76a2abf7 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/1981881b9eb9c8b8e6309b6fa4bc6644888d51be0555c07cc59426bb76a2abf7 deleted file mode 100644 index e79da4995..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/1981881b9eb9c8b8e6309b6fa4bc6644888d51be0555c07cc59426bb76a2abf7 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltStringLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[10,10,7]}]},"Foo!",1,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[10,10,7]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2579b85c3ef68a9e6024f115cce0e8df97d6af0c081a82f3236eae595a6a968a b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2579b85c3ef68a9e6024f115cce0e8df97d6af0c081a82f3236eae595a6a968a deleted file mode 100644 index a1f57cb65..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2579b85c3ef68a9e6024f115cce0e8df97d6af0c081a82f3236eae595a6a968a +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[5,10,2]}]},{"__type":"bigint","value":"1"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[5,10,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2b104a751103b04d1d75a2da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2b104a751103b04d1d75a2da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c deleted file mode 100644 index 53e5355b4..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2b104a751103b04d1d75a2da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,37,1]},{"__type":"classinstance","name":"TextPos","args":[5,37,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,37,1]},{"__type":"classinstance","name":"TextPos","args":[5,37,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,37,2]},{"__type":"classinstance","name":"TextPos","args":[7,37,4]}]},"b0",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,37,2]},{"__type":"classinstance","name":"TextPos","args":[7,37,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2dd117b5f9297969150f328a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2dd117b5f9297969150f328a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 deleted file mode 100644 index 22d98eb2b..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/2dd117b5f9297969150f328a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,53,1]},{"__type":"classinstance","name":"TextPos","args":[13,53,10]}]},"℘rototype",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,53,1]},{"__type":"classinstance","name":"TextPos","args":[13,53,10]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4884100bba1463661e51bd6816a823cc665f84458402f294ca0ea1883f8254f7 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4884100bba1463661e51bd6816a823cc665f84458402f294ca0ea1883f8254f7 deleted file mode 100644 index e4d1da1fd..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4884100bba1463661e51bd6816a823cc665f84458402f294ca0ea1883f8254f7 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,57,1]},{"__type":"classinstance","name":"TextPos","args":[17,57,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,57,1]},{"__type":"classinstance","name":"TextPos","args":[17,57,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[17,57,2]},{"__type":"classinstance","name":"TextPos","args":[21,57,6]}]},"o007",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[17,57,2]},{"__type":"classinstance","name":"TextPos","args":[21,57,6]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/48b4cf3bff164fe5ff276a3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/48b4cf3bff164fe5ff276a3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad deleted file mode 100644 index 446dc20d9..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/48b4cf3bff164fe5ff276a3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[54,36,1]},{"__type":"classinstance","name":"TextPos","args":[56,36,3]}]},"_1",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[54,36,1]},{"__type":"classinstance","name":"TextPos","args":[56,36,3]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/499252de561b141f856e69cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/499252de561b141f856e69cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 deleted file mode 100644 index 938a0a0d2..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/499252de561b141f856e69cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[12,12,1]},{"__type":"classinstance","name":"TextPos","args":[15,12,4]}]},"Baz",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[12,12,1]},{"__type":"classinstance","name":"TextPos","args":[15,12,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4cc7fbc78f2710cb7be12ead3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4cc7fbc78f2710cb7be12ead3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 deleted file mode 100644 index 2648248c4..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4cc7fbc78f2710cb7be12ead3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltStringLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[11,11,1]},{"__type":"classinstance","name":"TextPos","args":[33,11,23]}]},"Once upon a time ...",1,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[11,11,1]},{"__type":"classinstance","name":"TextPos","args":[33,11,23]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4ebc89e66ce704d1d6aba6215a71ad6a33ecb5b2bd08c0ceab0557c361165309 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4ebc89e66ce704d1d6aba6215a71ad6a33ecb5b2bd08c0ceab0557c361165309 deleted file mode 100644 index 01226b690..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/4ebc89e66ce704d1d6aba6215a71ad6a33ecb5b2bd08c0ceab0557c361165309 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,39,1]},{"__type":"classinstance","name":"TextPos","args":[13,39,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,39,1]},{"__type":"classinstance","name":"TextPos","args":[13,39,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,39,2]},{"__type":"classinstance","name":"TextPos","args":[19,39,8]}]},"b10010",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,39,2]},{"__type":"classinstance","name":"TextPos","args":[19,39,8]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/52eff5a856bab6d89069cdcf7454612131254e5055941add4528de0bee480c96 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/52eff5a856bab6d89069cdcf7454612131254e5055941add4528de0bee480c96 deleted file mode 100644 index bf9d9fd05..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/52eff5a856bab6d89069cdcf7454612131254e5055941add4528de0bee480c96 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,41,1]},{"__type":"classinstance","name":"TextPos","args":[29,41,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,41,1]},{"__type":"classinstance","name":"TextPos","args":[29,41,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[29,41,2]},{"__type":"classinstance","name":"TextPos","args":[35,41,8]}]},"b00000",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[29,41,2]},{"__type":"classinstance","name":"TextPos","args":[35,41,8]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/568c2347a8f8601c72ceff08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/568c2347a8f8601c72ceff08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 deleted file mode 100644 index 203e34849..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/568c2347a8f8601c72ceff08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,16,1]},{"__type":"classinstance","name":"TextPos","args":[17,16,2]}]},{"__type":"bigint","value":"7"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,16,1]},{"__type":"classinstance","name":"TextPos","args":[17,16,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/595a5d590e038d42bca273e488142e9c88145340f12f4f4c6075428032558812 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/595a5d590e038d42bca273e488142e9c88145340f12f4f4c6075428032558812 deleted file mode 100644 index dd0e778ab..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/595a5d590e038d42bca273e488142e9c88145340f12f4f4c6075428032558812 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,46,1]},{"__type":"classinstance","name":"TextPos","args":[12,46,4]}]},"___",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,46,1]},{"__type":"classinstance","name":"TextPos","args":[12,46,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/59982e5d757ca21b70d86046c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/59982e5d757ca21b70d86046c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 deleted file mode 100644 index ab0e40626..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/59982e5d757ca21b70d86046c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[7,10,4]}]},"Foo",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[7,10,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/63407ec05ff2ac0430265e648e0addd192b0c46cc2490564cbecfc7732226f12 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/63407ec05ff2ac0430265e648e0addd192b0c46cc2490564cbecfc7732226f12 deleted file mode 100644 index 4c7b89811..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/63407ec05ff2ac0430265e648e0addd192b0c46cc2490564cbecfc7732226f12 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,61,1]},{"__type":"classinstance","name":"TextPos","args":[18,61,11]}]},"ano·teleia",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,61,1]},{"__type":"classinstance","name":"TextPos","args":[18,61,11]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/63a7a8baf0292f93814f44ce6342368ba4d6f72123b491065f9f6cfbceb20241 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/63a7a8baf0292f93814f44ce6342368ba4d6f72123b491065f9f6cfbceb20241 deleted file mode 100644 index 74f17ebfc..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/63a7a8baf0292f93814f44ce6342368ba4d6f72123b491065f9f6cfbceb20241 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,44,1]},{"__type":"classinstance","name":"TextPos","args":[5,44,2]}]},"_",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,44,1]},{"__type":"classinstance","name":"TextPos","args":[5,44,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/69df08e0d942240862e2553a2d001b496dcb40ae2b06975810e6a7f9728654f2 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/69df08e0d942240862e2553a2d001b496dcb40ae2b06975810e6a7f9728654f2 deleted file mode 100644 index 100e70a7d..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/69df08e0d942240862e2553a2d001b496dcb40ae2b06975810e6a7f9728654f2 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,27,1]},{"__type":"classinstance","name":"TextPos","args":[33,27,30]}]},"ThisIsALongAndValidIdentifier",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,27,1]},{"__type":"classinstance","name":"TextPos","args":[33,27,30]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/75575f31489de62ec52ab77454c489b8202bd2b57663f011e773969fd26d971e b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/75575f31489de62ec52ab77454c489b8202bd2b57663f011e773969fd26d971e deleted file mode 100644 index 075ae3a87..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/75575f31489de62ec52ab77454c489b8202bd2b57663f011e773969fd26d971e +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,55,1]},{"__type":"classinstance","name":"TextPos","args":[5,55,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,55,1]},{"__type":"classinstance","name":"TextPos","args":[5,55,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,55,2]},{"__type":"classinstance","name":"TextPos","args":[7,55,4]}]},"o0",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,55,2]},{"__type":"classinstance","name":"TextPos","args":[7,55,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7c55dbfe7a4e71f5f1142287aa182718344028a964386a759b25c49ca8fb5158 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7c55dbfe7a4e71f5f1142287aa182718344028a964386a759b25c49ca8fb5158 deleted file mode 100644 index a824371f2..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7c55dbfe7a4e71f5f1142287aa182718344028a964386a759b25c49ca8fb5158 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[61,38,1]},{"__type":"classinstance","name":"TextPos","args":[65,38,5]}]},"___3",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[61,38,1]},{"__type":"classinstance","name":"TextPos","args":[65,38,5]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7c588ac15af7c45aadc6aee7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7c588ac15af7c45aadc6aee7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d deleted file mode 100644 index bdaccba16..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7c588ac15af7c45aadc6aee7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,47,1]},{"__type":"classinstance","name":"TextPos","args":[5,47,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,47,1]},{"__type":"classinstance","name":"TextPos","args":[5,47,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,47,2]},{"__type":"classinstance","name":"TextPos","args":[11,47,8]}]},"b20001",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,47,2]},{"__type":"classinstance","name":"TextPos","args":[11,47,8]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7cef6b59ca312a88e36667c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7cef6b59ca312a88e36667c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed deleted file mode 100644 index 32b792a34..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7cef6b59ca312a88e36667c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[23,35,1]},{"__type":"classinstance","name":"TextPos","args":[53,35,31]}]},"another__0000__valid_identfier",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[23,35,1]},{"__type":"classinstance","name":"TextPos","args":[53,35,31]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7d7f972f468aa014fa2e741a3a539c80320d3da6d2bef9193ebfd1cff17eea23 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7d7f972f468aa014fa2e741a3a539c80320d3da6d2bef9193ebfd1cff17eea23 deleted file mode 100644 index 37d1cf92f..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/7d7f972f468aa014fa2e741a3a539c80320d3da6d2bef9193ebfd1cff17eea23 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,19,1]},{"__type":"classinstance","name":"TextPos","args":[23,19,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,19,1]},{"__type":"classinstance","name":"TextPos","args":[23,19,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/8500ab658826a55f9c6eab32cd85685ab7620469241e967aa55cad5525fc92df b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/8500ab658826a55f9c6eab32cd85685ab7620469241e967aa55cad5525fc92df deleted file mode 100644 index 49c6d74fb..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/8500ab658826a55f9c6eab32cd85685ab7620469241e967aa55cad5525fc92df +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,26,1]},{"__type":"classinstance","name":"TextPos","args":[9,26,6]}]},{"__type":"bigint","value":"12345"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,26,1]},{"__type":"classinstance","name":"TextPos","args":[9,26,6]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/94e9fa2b82687e931f6efeb1f8725fc25c065f3dd74bfc4d0bd66c623262f15d b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/94e9fa2b82687e931f6efeb1f8725fc25c065f3dd74bfc4d0bd66c623262f15d deleted file mode 100644 index 76067fc70..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/94e9fa2b82687e931f6efeb1f8725fc25c065f3dd74bfc4d0bd66c623262f15d +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,14,1]},{"__type":"classinstance","name":"TextPos","args":[13,14,2]}]},{"__type":"bigint","value":"5"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,14,1]},{"__type":"classinstance","name":"TextPos","args":[13,14,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/9d3f6eb4a1802bf5f091fa533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/9d3f6eb4a1802bf5f091fa533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e deleted file mode 100644 index 54d13cfa4..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/9d3f6eb4a1802bf5f091fa533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,38,1]},{"__type":"classinstance","name":"TextPos","args":[9,38,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,38,1]},{"__type":"classinstance","name":"TextPos","args":[9,38,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[9,38,2]},{"__type":"classinstance","name":"TextPos","args":[11,38,4]}]},"b1",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[9,38,2]},{"__type":"classinstance","name":"TextPos","args":[11,38,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/9ec78cce28dc5df3d67e5ef7987d9b527e68df4ae7c42e13d6105414e5ae322c b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/9ec78cce28dc5df3d67e5ef7987d9b527e68df4ae7c42e13d6105414e5ae322c deleted file mode 100644 index a626c9479..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/9ec78cce28dc5df3d67e5ef7987d9b527e68df4ae7c42e13d6105414e5ae322c +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,54,1]},{"__type":"classinstance","name":"TextPos","args":[22,54,9]}]},"℮llipsis",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,54,1]},{"__type":"classinstance","name":"TextPos","args":[22,54,9]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a3365e07b382729afd1e7cccb270f459a8551acbb9c96f366226dd8cb03ebf7d b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a3365e07b382729afd1e7cccb270f459a8551acbb9c96f366226dd8cb03ebf7d deleted file mode 100644 index c8d5303bd..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a3365e07b382729afd1e7cccb270f459a8551acbb9c96f366226dd8cb03ebf7d +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,20,1]},{"__type":"classinstance","name":"TextPos","args":[13,20,5]}]},"Var2",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,20,1]},{"__type":"classinstance","name":"TextPos","args":[13,20,5]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a37ab5e8c08d826da61c90f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a37ab5e8c08d826da61c90f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce deleted file mode 100644 index ad6865fd6..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a37ab5e8c08d826da61c90f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,21,1]},{"__type":"classinstance","name":"TextPos","args":[25,21,12]}]},"Var10029384",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,21,1]},{"__type":"classinstance","name":"TextPos","args":[25,21,12]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a80b4056977856e39877810f3b6bd04b5371cc75e041c05040cacc7571af604f b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a80b4056977856e39877810f3b6bd04b5371cc75e041c05040cacc7571af604f deleted file mode 100644 index 423d8699d..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/a80b4056977856e39877810f3b6bd04b5371cc75e041c05040cacc7571af604f +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,49,1]},{"__type":"classinstance","name":"TextPos","args":[21,49,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,49,1]},{"__type":"classinstance","name":"TextPos","args":[21,49,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[21,49,2]},{"__type":"classinstance","name":"TextPos","args":[27,49,8]}]},"b00003",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[21,49,2]},{"__type":"classinstance","name":"TextPos","args":[27,49,8]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/ae56b91428a69e02ed58be421cf9f00ed054aa6e316a4d64f0bd7a57a015374d b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/ae56b91428a69e02ed58be421cf9f00ed054aa6e316a4d64f0bd7a57a015374d deleted file mode 100644 index 4f6d9c737..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/ae56b91428a69e02ed58be421cf9f00ed054aa6e316a4d64f0bd7a57a015374d +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,40,1]},{"__type":"classinstance","name":"TextPos","args":[21,40,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,40,1]},{"__type":"classinstance","name":"TextPos","args":[21,40,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[21,40,2]},{"__type":"classinstance","name":"TextPos","args":[27,40,8]}]},"b00100",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[21,40,2]},{"__type":"classinstance","name":"TextPos","args":[27,40,8]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/aec839fe22c98a0f2b31717e9b8e6aeae86c16820c30d6888a40528ceac6a009 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/aec839fe22c98a0f2b31717e9b8e6aeae86c16820c30d6888a40528ceac6a009 deleted file mode 100644 index c8aa77d28..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/aec839fe22c98a0f2b31717e9b8e6aeae86c16820c30d6888a40528ceac6a009 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[6,11,1]},{"__type":"classinstance","name":"TextPos","args":[7,11,2]}]},{"__type":"bigint","value":"2"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[6,11,1]},{"__type":"classinstance","name":"TextPos","args":[7,11,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/b48ddbce90ec393ffd245236a94b02c7134954c0c8961235e8eaa8f4050dc3d2 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/b48ddbce90ec393ffd245236a94b02c7134954c0c8961235e8eaa8f4050dc3d2 deleted file mode 100644 index 5d19b75b0..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/b48ddbce90ec393ffd245236a94b02c7134954c0c8961235e8eaa8f4050dc3d2 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,56,1]},{"__type":"classinstance","name":"TextPos","args":[9,56,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,56,1]},{"__type":"classinstance","name":"TextPos","args":[9,56,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[9,56,2]},{"__type":"classinstance","name":"TextPos","args":[15,56,8]}]},"o00000",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[9,56,2]},{"__type":"classinstance","name":"TextPos","args":[15,56,8]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/b831ec3e6af064f0c9318b0af44ad2d44579bf5718c4efd7063147bc579f3006 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/b831ec3e6af064f0c9318b0af44ad2d44579bf5718c4efd7063147bc579f3006 deleted file mode 100644 index 560c0982f..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/b831ec3e6af064f0c9318b0af44ad2d44579bf5718c4efd7063147bc579f3006 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,18,1]},{"__type":"classinstance","name":"TextPos","args":[21,18,2]}]},{"__type":"bigint","value":"9"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,18,1]},{"__type":"classinstance","name":"TextPos","args":[21,18,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c203a31f42c799873febf7b34df48da45f18a5d07c91d67702f3eb020217428e b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c203a31f42c799873febf7b34df48da45f18a5d07c91d67702f3eb020217428e deleted file mode 100644 index e2e085e11..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c203a31f42c799873febf7b34df48da45f18a5d07c91d67702f3eb020217428e +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,19,1]},{"__type":"classinstance","name":"TextPos","args":[8,19,5]}]},"Var1",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,19,1]},{"__type":"classinstance","name":"TextPos","args":[8,19,5]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c3e3220e1f877217bca870d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c3e3220e1f877217bca870d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 deleted file mode 100644 index 146c00db1..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c3e3220e1f877217bca870d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,12,1]},{"__type":"classinstance","name":"TextPos","args":[9,12,2]}]},{"__type":"bigint","value":"3"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,12,1]},{"__type":"classinstance","name":"TextPos","args":[9,12,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c826f8db2b8c8b57b93843651951d79f2b42f304dd936043116dbd06d019fb4c b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c826f8db2b8c8b57b93843651951d79f2b42f304dd936043116dbd06d019fb4c deleted file mode 100644 index 209f9793e..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/c826f8db2b8c8b57b93843651951d79f2b42f304dd936043116dbd06d019fb4c +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[57,37,1]},{"__type":"classinstance","name":"TextPos","args":[60,37,4]}]},"__2",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[57,37,1]},{"__type":"classinstance","name":"TextPos","args":[60,37,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/cb6b58ac199e78e73e290e5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/cb6b58ac199e78e73e290e5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 deleted file mode 100644 index 723a14233..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/cb6b58ac199e78e73e290e5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[6,45,1]},{"__type":"classinstance","name":"TextPos","args":[8,45,3]}]},"__",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[6,45,1]},{"__type":"classinstance","name":"TextPos","args":[8,45,3]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d5a60b97969c3bf62d27845c7c6f581179dbbcc109d82292e79dda437617914b b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d5a60b97969c3bf62d27845c7c6f581179dbbcc109d82292e79dda437617914b deleted file mode 100644 index afd9136f0..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d5a60b97969c3bf62d27845c7c6f581179dbbcc109d82292e79dda437617914b +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,60,1]},{"__type":"classinstance","name":"TextPos","args":[7,60,4]}]},"α·β",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,60,1]},{"__type":"classinstance","name":"TextPos","args":[7,60,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d7680fc724d967ce8d80dda8caa5f9985790a7e252d21e00b9906107058f2463 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d7680fc724d967ce8d80dda8caa5f9985790a7e252d21e00b9906107058f2463 deleted file mode 100644 index 4e8042436..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d7680fc724d967ce8d80dda8caa5f9985790a7e252d21e00b9906107058f2463 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,27,1]},{"__type":"classinstance","name":"TextPos","args":[12,27,3]}]},{"__type":"bigint","value":"99"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,27,1]},{"__type":"classinstance","name":"TextPos","args":[12,27,3]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d8ae5b373b69472c1208bc836f419612d5c23b197d8692cb185f7ff63ac16509 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d8ae5b373b69472c1208bc836f419612d5c23b197d8692cb185f7ff63ac16509 deleted file mode 100644 index 5bd5f86c3..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/d8ae5b373b69472c1208bc836f419612d5c23b197d8692cb185f7ff63ac16509 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,28,1]},{"__type":"classinstance","name":"TextPos","args":[15,28,3]}]},{"__type":"bigint","value":"10"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,28,1]},{"__type":"classinstance","name":"TextPos","args":[15,28,3]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/dc9ed16c194d73ebd92f71b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/dc9ed16c194d73ebd92f71b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 deleted file mode 100644 index d4de30795..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/dc9ed16c194d73ebd92f71b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,29,1]},{"__type":"classinstance","name":"TextPos","args":[18,29,3]}]},{"__type":"bigint","value":"1"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,29,1]},{"__type":"classinstance","name":"TextPos","args":[18,29,3]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/de491be437f1dfff0a39f074b97ee6594527388d5b7ac20ff322821fca816f40 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/de491be437f1dfff0a39f074b97ee6594527388d5b7ac20ff322821fca816f40 deleted file mode 100644 index ac3f073ed..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/de491be437f1dfff0a39f074b97ee6594527388d5b7ac20ff322821fca816f40 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[19,30,1]},{"__type":"classinstance","name":"TextPos","args":[22,30,4]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[19,30,1]},{"__type":"classinstance","name":"TextPos","args":[22,30,4]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/e5b8fcbfe810f9e8ceb5294ca34e0a007e65907345a5169af4def215287a4963 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/e5b8fcbfe810f9e8ceb5294ca34e0a007e65907345a5169af4def215287a4963 deleted file mode 100644 index fba6c73f1..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/e5b8fcbfe810f9e8ceb5294ca34e0a007e65907345a5169af4def215287a4963 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,48,1]},{"__type":"classinstance","name":"TextPos","args":[13,48,2]}]},{"__type":"bigint","value":"0"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,48,1]},{"__type":"classinstance","name":"TextPos","args":[13,48,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,48,2]},{"__type":"classinstance","name":"TextPos","args":[19,48,8]}]},"b12345",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,48,2]},{"__type":"classinstance","name":"TextPos","args":[19,48,8]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/e8eafefabd272f9c511d97a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/e8eafefabd272f9c511d97a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 deleted file mode 100644 index b59feccfa..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/e8eafefabd272f9c511d97a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[14,15,1]},{"__type":"classinstance","name":"TextPos","args":[15,15,2]}]},{"__type":"bigint","value":"6"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[14,15,1]},{"__type":"classinstance","name":"TextPos","args":[15,15,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/ed7931d743c2e30de8e36626c3cd7956ef70b582564b417809135806711ff41f b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/ed7931d743c2e30de8e36626c3cd7956ef70b582564b417809135806711ff41f deleted file mode 100644 index 06f572358..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/ed7931d743c2e30de8e36626c3cd7956ef70b582564b417809135806711ff41f +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,34,1]},{"__type":"classinstance","name":"TextPos","args":[22,34,19]}]},"a_valid_identifier",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,34,1]},{"__type":"classinstance","name":"TextPos","args":[22,34,19]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/f42290c65de62f7b22c77408765efedfd61a3debe98319ac87259481e5560c1a b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/f42290c65de62f7b22c77408765efedfd61a3debe98319ac87259481e5560c1a deleted file mode 100644 index 62d704122..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/f42290c65de62f7b22c77408765efedfd61a3debe98319ac87259481e5560c1a +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,13,1]},{"__type":"classinstance","name":"TextPos","args":[11,13,2]}]},{"__type":"bigint","value":"4"},2,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,13,1]},{"__type":"classinstance","name":"TextPos","args":[11,13,2]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/f5e5e2201ed25fc6894b5f50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/f5e5e2201ed25fc6894b5f50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 deleted file mode 100644 index 143d03bb9..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/f5e5e2201ed25fc6894b5f50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[34,28,1]},{"__type":"classinstance","name":"TextPos","args":[84,28,51]}]},"ThisIsAnEvenLongerButStilCompletelyValidIdentifier",3,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[34,28,1]},{"__type":"classinstance","name":"TextPos","args":[84,28,51]}]}]}]} \ No newline at end of file diff --git a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/feb452354ed6939e5bdc3e31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d b/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/feb452354ed6939e5bdc3e31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d deleted file mode 100644 index dd9f80ecd..000000000 --- a/.test-storage/snapshots/58030ea2-b2d4-45e1-96f5-6b21369a4564/feb452354ed6939e5bdc3e31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d +++ /dev/null @@ -1 +0,0 @@ -{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltStringLiteral","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,18,1]},{"__type":"classinstance","name":"TextPos","args":[28,18,25]}]},"S+me w3!rd @SCII ch@r$",1,{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,18,1]},{"__type":"classinstance","name":"TextPos","args":[28,18,25]}]}]}]} \ No newline at end of file diff --git a/.test-storage/tests/0bb969f4f6e6fb9eea6901c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 b/.test-storage/tests/0bb969f4f6e6fb9eea6901c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 deleted file mode 100644 index 744def595..000000000 --- a/.test-storage/tests/0bb969f4f6e6fb9eea6901c32199cf5a88425e5d28195f3a260e6bd7e66fdfd3 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,11,1]},{"__type":"classinstance","name":"TextPos","args":[8,11,1]}]},"scan","Bar",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/0e326768f197cfd975e226e4a4e042a07c7993c319c249133d418c48e6b06ef8 b/.test-storage/tests/0e326768f197cfd975e226e4a4e042a07c7993c319c249133d418c48e6b06ef8 deleted file mode 100644 index 9183bf05a..000000000 --- a/.test-storage/tests/0e326768f197cfd975e226e4a4e042a07c7993c319c249133d418c48e6b06ef8 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[23,31,1]},{"__type":"classinstance","name":"TextPos","args":[23,31,1]}]},"scan","0010",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/12f351acdb338f0eed44148b5fb17a4c7627748d4eba133a1970c3ff4e078ffd b/.test-storage/tests/12f351acdb338f0eed44148b5fb17a4c7627748d4eba133a1970c3ff4e078ffd deleted file mode 100644 index e1a57e7cb..000000000 --- a/.test-storage/tests/12f351acdb338f0eed44148b5fb17a4c7627748d4eba133a1970c3ff4e078ffd +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[18,17,1]},{"__type":"classinstance","name":"TextPos","args":[18,17,1]}]},"scan","8",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/15d598ddfe134175289075c8e335aff346a2f71147852ff3546f7f069f37973a b/.test-storage/tests/15d598ddfe134175289075c8e335aff346a2f71147852ff3546f7f069f37973a deleted file mode 100644 index 4f20a76c3..000000000 --- a/.test-storage/tests/15d598ddfe134175289075c8e335aff346a2f71147852ff3546f7f069f37973a +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,58,1]},{"__type":"classinstance","name":"TextPos","args":[22,58,1]}]},"scan","0o706",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/17df980c6fea7a5768d260667a7a91607cc6695f97ed11807e48c3d6e7870a83 b/.test-storage/tests/17df980c6fea7a5768d260667a7a91607cc6695f97ed11807e48c3d6e7870a83 deleted file mode 100644 index fde6f3e2f..000000000 --- a/.test-storage/tests/17df980c6fea7a5768d260667a7a91607cc6695f97ed11807e48c3d6e7870a83 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,59,1]},{"__type":"classinstance","name":"TextPos","args":[28,59,1]}]},"scan","0o12345",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/1981881b9eb9c8b8e6309b6fa4bc6644888d51be0555c07cc59426bb76a2abf7 b/.test-storage/tests/1981881b9eb9c8b8e6309b6fa4bc6644888d51be0555c07cc59426bb76a2abf7 deleted file mode 100644 index d5f9d5d57..000000000 --- a/.test-storage/tests/1981881b9eb9c8b8e6309b6fa4bc6644888d51be0555c07cc59426bb76a2abf7 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]}]},"scan","\"Foo!\"",{"type":"scan","expect":"BoltStringLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/2579b85c3ef68a9e6024f115cce0e8df97d6af0c081a82f3236eae595a6a968a b/.test-storage/tests/2579b85c3ef68a9e6024f115cce0e8df97d6af0c081a82f3236eae595a6a968a deleted file mode 100644 index 608c5c46d..000000000 --- a/.test-storage/tests/2579b85c3ef68a9e6024f115cce0e8df97d6af0c081a82f3236eae595a6a968a +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]}]},"scan","1",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/2b104a751103b04d1d75a2da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c b/.test-storage/tests/2b104a751103b04d1d75a2da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c deleted file mode 100644 index b3e38d46d..000000000 --- a/.test-storage/tests/2b104a751103b04d1d75a2da589ac307fc88f13dfd00bbbbbff28d2f7db17d9c +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,37,1]},{"__type":"classinstance","name":"TextPos","args":[4,37,1]}]},"scan","0b0",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/2dd117b5f9297969150f328a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 b/.test-storage/tests/2dd117b5f9297969150f328a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 deleted file mode 100644 index 4e149694c..000000000 --- a/.test-storage/tests/2dd117b5f9297969150f328a9e6577e65a4cf404517b66e3f720e83d5a51a6a0 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,53,1]},{"__type":"classinstance","name":"TextPos","args":[4,53,1]}]},"scan","℘rototype",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/4884100bba1463661e51bd6816a823cc665f84458402f294ca0ea1883f8254f7 b/.test-storage/tests/4884100bba1463661e51bd6816a823cc665f84458402f294ca0ea1883f8254f7 deleted file mode 100644 index 957869a31..000000000 --- a/.test-storage/tests/4884100bba1463661e51bd6816a823cc665f84458402f294ca0ea1883f8254f7 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,57,1]},{"__type":"classinstance","name":"TextPos","args":[16,57,1]}]},"scan","0o007",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/48b4cf3bff164fe5ff276a3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad b/.test-storage/tests/48b4cf3bff164fe5ff276a3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad deleted file mode 100644 index 66536e169..000000000 --- a/.test-storage/tests/48b4cf3bff164fe5ff276a3a9ab3b1145ba68d7c738a0a453d39d882d5dba1ad +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[54,36,1]},{"__type":"classinstance","name":"TextPos","args":[54,36,1]}]},"scan","_1",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/499252de561b141f856e69cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 b/.test-storage/tests/499252de561b141f856e69cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 deleted file mode 100644 index b631badc4..000000000 --- a/.test-storage/tests/499252de561b141f856e69cc06bfcd62d51c8dbaa4776c3d7ebe07cc5a15c620 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[12,12,1]},{"__type":"classinstance","name":"TextPos","args":[12,12,1]}]},"scan","Baz",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/4cc7fbc78f2710cb7be12ead3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 b/.test-storage/tests/4cc7fbc78f2710cb7be12ead3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 deleted file mode 100644 index 8794d7022..000000000 --- a/.test-storage/tests/4cc7fbc78f2710cb7be12ead3a13345d1bed78ed40dcdd9c0d1de2b31fbe7181 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[11,11,1]},{"__type":"classinstance","name":"TextPos","args":[11,11,1]}]},"scan","\"Once upon a time ...\"",{"type":"scan","expect":"BoltStringLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/4ebc89e66ce704d1d6aba6215a71ad6a33ecb5b2bd08c0ceab0557c361165309 b/.test-storage/tests/4ebc89e66ce704d1d6aba6215a71ad6a33ecb5b2bd08c0ceab0557c361165309 deleted file mode 100644 index 4e19ce541..000000000 --- a/.test-storage/tests/4ebc89e66ce704d1d6aba6215a71ad6a33ecb5b2bd08c0ceab0557c361165309 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,39,1]},{"__type":"classinstance","name":"TextPos","args":[12,39,1]}]},"scan","0b10010",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/52eff5a856bab6d89069cdcf7454612131254e5055941add4528de0bee480c96 b/.test-storage/tests/52eff5a856bab6d89069cdcf7454612131254e5055941add4528de0bee480c96 deleted file mode 100644 index 7c428fc77..000000000 --- a/.test-storage/tests/52eff5a856bab6d89069cdcf7454612131254e5055941add4528de0bee480c96 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,41,1]},{"__type":"classinstance","name":"TextPos","args":[28,41,1]}]},"scan","0b00000",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/568c2347a8f8601c72ceff08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 b/.test-storage/tests/568c2347a8f8601c72ceff08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 deleted file mode 100644 index b82e68523..000000000 --- a/.test-storage/tests/568c2347a8f8601c72ceff08e395ad12eafe279d8edf2c2d64714fc57f3adcd2 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,16,1]},{"__type":"classinstance","name":"TextPos","args":[16,16,1]}]},"scan","7",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/595a5d590e038d42bca273e488142e9c88145340f12f4f4c6075428032558812 b/.test-storage/tests/595a5d590e038d42bca273e488142e9c88145340f12f4f4c6075428032558812 deleted file mode 100644 index 5c3fd7b98..000000000 --- a/.test-storage/tests/595a5d590e038d42bca273e488142e9c88145340f12f4f4c6075428032558812 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,46,1]},{"__type":"classinstance","name":"TextPos","args":[9,46,1]}]},"scan","___",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/59982e5d757ca21b70d86046c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 b/.test-storage/tests/59982e5d757ca21b70d86046c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 deleted file mode 100644 index 838134664..000000000 --- a/.test-storage/tests/59982e5d757ca21b70d86046c0f4abf82aea6e4f3ac8cdf4a4577c771a84c757 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]}]},"scan","Foo",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/63407ec05ff2ac0430265e648e0addd192b0c46cc2490564cbecfc7732226f12 b/.test-storage/tests/63407ec05ff2ac0430265e648e0addd192b0c46cc2490564cbecfc7732226f12 deleted file mode 100644 index 7ae50f851..000000000 --- a/.test-storage/tests/63407ec05ff2ac0430265e648e0addd192b0c46cc2490564cbecfc7732226f12 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,61,1]},{"__type":"classinstance","name":"TextPos","args":[8,61,1]}]},"scan","ano·teleia",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/63a7a8baf0292f93814f44ce6342368ba4d6f72123b491065f9f6cfbceb20241 b/.test-storage/tests/63a7a8baf0292f93814f44ce6342368ba4d6f72123b491065f9f6cfbceb20241 deleted file mode 100644 index e49ac30d2..000000000 --- a/.test-storage/tests/63a7a8baf0292f93814f44ce6342368ba4d6f72123b491065f9f6cfbceb20241 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,44,1]},{"__type":"classinstance","name":"TextPos","args":[4,44,1]}]},"scan","_",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/69df08e0d942240862e2553a2d001b496dcb40ae2b06975810e6a7f9728654f2 b/.test-storage/tests/69df08e0d942240862e2553a2d001b496dcb40ae2b06975810e6a7f9728654f2 deleted file mode 100644 index 1385876f7..000000000 --- a/.test-storage/tests/69df08e0d942240862e2553a2d001b496dcb40ae2b06975810e6a7f9728654f2 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,27,1]},{"__type":"classinstance","name":"TextPos","args":[4,27,1]}]},"scan","ThisIsALongAndValidIdentifier",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/75575f31489de62ec52ab77454c489b8202bd2b57663f011e773969fd26d971e b/.test-storage/tests/75575f31489de62ec52ab77454c489b8202bd2b57663f011e773969fd26d971e deleted file mode 100644 index 0c5130606..000000000 --- a/.test-storage/tests/75575f31489de62ec52ab77454c489b8202bd2b57663f011e773969fd26d971e +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,55,1]},{"__type":"classinstance","name":"TextPos","args":[4,55,1]}]},"scan","0o0",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/7c55dbfe7a4e71f5f1142287aa182718344028a964386a759b25c49ca8fb5158 b/.test-storage/tests/7c55dbfe7a4e71f5f1142287aa182718344028a964386a759b25c49ca8fb5158 deleted file mode 100644 index da9783c89..000000000 --- a/.test-storage/tests/7c55dbfe7a4e71f5f1142287aa182718344028a964386a759b25c49ca8fb5158 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[61,38,1]},{"__type":"classinstance","name":"TextPos","args":[61,38,1]}]},"scan","___3",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/7c588ac15af7c45aadc6aee7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d b/.test-storage/tests/7c588ac15af7c45aadc6aee7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d deleted file mode 100644 index a9d99618c..000000000 --- a/.test-storage/tests/7c588ac15af7c45aadc6aee7eda3c24e42ea7f0645165e9aedd44645c2c4ba4d +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,47,1]},{"__type":"classinstance","name":"TextPos","args":[4,47,1]}]},"scan","0b20001",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/7cef6b59ca312a88e36667c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed b/.test-storage/tests/7cef6b59ca312a88e36667c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed deleted file mode 100644 index f17f47dd3..000000000 --- a/.test-storage/tests/7cef6b59ca312a88e36667c6fa2bc146c06d20aa4de6ffa7fec6a2a77b6158ed +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[23,35,1]},{"__type":"classinstance","name":"TextPos","args":[23,35,1]}]},"scan","another__0000__valid_identfier",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/7d7f972f468aa014fa2e741a3a539c80320d3da6d2bef9193ebfd1cff17eea23 b/.test-storage/tests/7d7f972f468aa014fa2e741a3a539c80320d3da6d2bef9193ebfd1cff17eea23 deleted file mode 100644 index c10da39c6..000000000 --- a/.test-storage/tests/7d7f972f468aa014fa2e741a3a539c80320d3da6d2bef9193ebfd1cff17eea23 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,19,1]},{"__type":"classinstance","name":"TextPos","args":[22,19,1]}]},"scan","0",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/8500ab658826a55f9c6eab32cd85685ab7620469241e967aa55cad5525fc92df b/.test-storage/tests/8500ab658826a55f9c6eab32cd85685ab7620469241e967aa55cad5525fc92df deleted file mode 100644 index 2940085b5..000000000 --- a/.test-storage/tests/8500ab658826a55f9c6eab32cd85685ab7620469241e967aa55cad5525fc92df +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,26,1]},{"__type":"classinstance","name":"TextPos","args":[4,26,1]}]},"scan","12345",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/94e9fa2b82687e931f6efeb1f8725fc25c065f3dd74bfc4d0bd66c623262f15d b/.test-storage/tests/94e9fa2b82687e931f6efeb1f8725fc25c065f3dd74bfc4d0bd66c623262f15d deleted file mode 100644 index 15ed71989..000000000 --- a/.test-storage/tests/94e9fa2b82687e931f6efeb1f8725fc25c065f3dd74bfc4d0bd66c623262f15d +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,14,1]},{"__type":"classinstance","name":"TextPos","args":[12,14,1]}]},"scan","5",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/9d3f6eb4a1802bf5f091fa533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e b/.test-storage/tests/9d3f6eb4a1802bf5f091fa533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e deleted file mode 100644 index bf7128776..000000000 --- a/.test-storage/tests/9d3f6eb4a1802bf5f091fa533ecb62b9d51c91bd1814a62bb73cc08adbe5ba2e +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,38,1]},{"__type":"classinstance","name":"TextPos","args":[8,38,1]}]},"scan","0b1",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/9ec78cce28dc5df3d67e5ef7987d9b527e68df4ae7c42e13d6105414e5ae322c b/.test-storage/tests/9ec78cce28dc5df3d67e5ef7987d9b527e68df4ae7c42e13d6105414e5ae322c deleted file mode 100644 index b0f5340bb..000000000 --- a/.test-storage/tests/9ec78cce28dc5df3d67e5ef7987d9b527e68df4ae7c42e13d6105414e5ae322c +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,54,1]},{"__type":"classinstance","name":"TextPos","args":[14,54,1]}]},"scan","℮llipsis",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/a3365e07b382729afd1e7cccb270f459a8551acbb9c96f366226dd8cb03ebf7d b/.test-storage/tests/a3365e07b382729afd1e7cccb270f459a8551acbb9c96f366226dd8cb03ebf7d deleted file mode 100644 index 569d8698f..000000000 --- a/.test-storage/tests/a3365e07b382729afd1e7cccb270f459a8551acbb9c96f366226dd8cb03ebf7d +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,20,1]},{"__type":"classinstance","name":"TextPos","args":[9,20,1]}]},"scan","Var2",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/a37ab5e8c08d826da61c90f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce b/.test-storage/tests/a37ab5e8c08d826da61c90f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce deleted file mode 100644 index dd3d1f541..000000000 --- a/.test-storage/tests/a37ab5e8c08d826da61c90f4fc99d0211023fe08d11e87a6f4b4cfffeb5e1dce +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,21,1]},{"__type":"classinstance","name":"TextPos","args":[14,21,1]}]},"scan","Var10029384",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/a80b4056977856e39877810f3b6bd04b5371cc75e041c05040cacc7571af604f b/.test-storage/tests/a80b4056977856e39877810f3b6bd04b5371cc75e041c05040cacc7571af604f deleted file mode 100644 index cb867589a..000000000 --- a/.test-storage/tests/a80b4056977856e39877810f3b6bd04b5371cc75e041c05040cacc7571af604f +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,49,1]},{"__type":"classinstance","name":"TextPos","args":[20,49,1]}]},"scan","0b00003",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/ae56b91428a69e02ed58be421cf9f00ed054aa6e316a4d64f0bd7a57a015374d b/.test-storage/tests/ae56b91428a69e02ed58be421cf9f00ed054aa6e316a4d64f0bd7a57a015374d deleted file mode 100644 index e8d0009bd..000000000 --- a/.test-storage/tests/ae56b91428a69e02ed58be421cf9f00ed054aa6e316a4d64f0bd7a57a015374d +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,40,1]},{"__type":"classinstance","name":"TextPos","args":[20,40,1]}]},"scan","0b00100",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/aec839fe22c98a0f2b31717e9b8e6aeae86c16820c30d6888a40528ceac6a009 b/.test-storage/tests/aec839fe22c98a0f2b31717e9b8e6aeae86c16820c30d6888a40528ceac6a009 deleted file mode 100644 index 29eefea35..000000000 --- a/.test-storage/tests/aec839fe22c98a0f2b31717e9b8e6aeae86c16820c30d6888a40528ceac6a009 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[6,11,1]},{"__type":"classinstance","name":"TextPos","args":[6,11,1]}]},"scan","2",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/b48ddbce90ec393ffd245236a94b02c7134954c0c8961235e8eaa8f4050dc3d2 b/.test-storage/tests/b48ddbce90ec393ffd245236a94b02c7134954c0c8961235e8eaa8f4050dc3d2 deleted file mode 100644 index 1bc794902..000000000 --- a/.test-storage/tests/b48ddbce90ec393ffd245236a94b02c7134954c0c8961235e8eaa8f4050dc3d2 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,56,1]},{"__type":"classinstance","name":"TextPos","args":[8,56,1]}]},"scan","0o00000",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/b831ec3e6af064f0c9318b0af44ad2d44579bf5718c4efd7063147bc579f3006 b/.test-storage/tests/b831ec3e6af064f0c9318b0af44ad2d44579bf5718c4efd7063147bc579f3006 deleted file mode 100644 index 6451bcba2..000000000 --- a/.test-storage/tests/b831ec3e6af064f0c9318b0af44ad2d44579bf5718c4efd7063147bc579f3006 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,18,1]},{"__type":"classinstance","name":"TextPos","args":[20,18,1]}]},"scan","9",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/c203a31f42c799873febf7b34df48da45f18a5d07c91d67702f3eb020217428e b/.test-storage/tests/c203a31f42c799873febf7b34df48da45f18a5d07c91d67702f3eb020217428e deleted file mode 100644 index 2f942aa9b..000000000 --- a/.test-storage/tests/c203a31f42c799873febf7b34df48da45f18a5d07c91d67702f3eb020217428e +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,19,1]},{"__type":"classinstance","name":"TextPos","args":[4,19,1]}]},"scan","Var1",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/c3e3220e1f877217bca870d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 b/.test-storage/tests/c3e3220e1f877217bca870d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 deleted file mode 100644 index 656560f8c..000000000 --- a/.test-storage/tests/c3e3220e1f877217bca870d92ca44406cf0adb08f509eeee4fc1eca7bacb6778 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,12,1]},{"__type":"classinstance","name":"TextPos","args":[8,12,1]}]},"scan","3",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/c826f8db2b8c8b57b93843651951d79f2b42f304dd936043116dbd06d019fb4c b/.test-storage/tests/c826f8db2b8c8b57b93843651951d79f2b42f304dd936043116dbd06d019fb4c deleted file mode 100644 index ddab6e097..000000000 --- a/.test-storage/tests/c826f8db2b8c8b57b93843651951d79f2b42f304dd936043116dbd06d019fb4c +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[57,37,1]},{"__type":"classinstance","name":"TextPos","args":[57,37,1]}]},"scan","__2",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/cb6b58ac199e78e73e290e5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 b/.test-storage/tests/cb6b58ac199e78e73e290e5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 deleted file mode 100644 index c7f40973b..000000000 --- a/.test-storage/tests/cb6b58ac199e78e73e290e5331b1ed10e68b6ccd4c35bfc32db43a4d9ea3b095 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[6,45,1]},{"__type":"classinstance","name":"TextPos","args":[6,45,1]}]},"scan","__",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/d5a60b97969c3bf62d27845c7c6f581179dbbcc109d82292e79dda437617914b b/.test-storage/tests/d5a60b97969c3bf62d27845c7c6f581179dbbcc109d82292e79dda437617914b deleted file mode 100644 index a708a4926..000000000 --- a/.test-storage/tests/d5a60b97969c3bf62d27845c7c6f581179dbbcc109d82292e79dda437617914b +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,60,1]},{"__type":"classinstance","name":"TextPos","args":[4,60,1]}]},"scan","α·β",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/d7680fc724d967ce8d80dda8caa5f9985790a7e252d21e00b9906107058f2463 b/.test-storage/tests/d7680fc724d967ce8d80dda8caa5f9985790a7e252d21e00b9906107058f2463 deleted file mode 100644 index 66a18e06e..000000000 --- a/.test-storage/tests/d7680fc724d967ce8d80dda8caa5f9985790a7e252d21e00b9906107058f2463 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,27,1]},{"__type":"classinstance","name":"TextPos","args":[10,27,1]}]},"scan","99",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/d8ae5b373b69472c1208bc836f419612d5c23b197d8692cb185f7ff63ac16509 b/.test-storage/tests/d8ae5b373b69472c1208bc836f419612d5c23b197d8692cb185f7ff63ac16509 deleted file mode 100644 index 5eb53b1e6..000000000 --- a/.test-storage/tests/d8ae5b373b69472c1208bc836f419612d5c23b197d8692cb185f7ff63ac16509 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,28,1]},{"__type":"classinstance","name":"TextPos","args":[13,28,1]}]},"scan","10",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/dc9ed16c194d73ebd92f71b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 b/.test-storage/tests/dc9ed16c194d73ebd92f71b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 deleted file mode 100644 index d34c144de..000000000 --- a/.test-storage/tests/dc9ed16c194d73ebd92f71b06ea47da7706cc7b99dd095bbf550bd02c4e7b643 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,29,1]},{"__type":"classinstance","name":"TextPos","args":[16,29,1]}]},"scan","01",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/de491be437f1dfff0a39f074b97ee6594527388d5b7ac20ff322821fca816f40 b/.test-storage/tests/de491be437f1dfff0a39f074b97ee6594527388d5b7ac20ff322821fca816f40 deleted file mode 100644 index b4ea2b919..000000000 --- a/.test-storage/tests/de491be437f1dfff0a39f074b97ee6594527388d5b7ac20ff322821fca816f40 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[19,30,1]},{"__type":"classinstance","name":"TextPos","args":[19,30,1]}]},"scan","000",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/e5b8fcbfe810f9e8ceb5294ca34e0a007e65907345a5169af4def215287a4963 b/.test-storage/tests/e5b8fcbfe810f9e8ceb5294ca34e0a007e65907345a5169af4def215287a4963 deleted file mode 100644 index d09417153..000000000 --- a/.test-storage/tests/e5b8fcbfe810f9e8ceb5294ca34e0a007e65907345a5169af4def215287a4963 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,48,1]},{"__type":"classinstance","name":"TextPos","args":[12,48,1]}]},"scan","0b12345",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/e8eafefabd272f9c511d97a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 b/.test-storage/tests/e8eafefabd272f9c511d97a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 deleted file mode 100644 index f6385619e..000000000 --- a/.test-storage/tests/e8eafefabd272f9c511d97a289be0ffa24a4fb17080c1d2c5aadc6b8a044f170 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[14,15,1]},{"__type":"classinstance","name":"TextPos","args":[14,15,1]}]},"scan","6",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/ed7931d743c2e30de8e36626c3cd7956ef70b582564b417809135806711ff41f b/.test-storage/tests/ed7931d743c2e30de8e36626c3cd7956ef70b582564b417809135806711ff41f deleted file mode 100644 index db751bf52..000000000 --- a/.test-storage/tests/ed7931d743c2e30de8e36626c3cd7956ef70b582564b417809135806711ff41f +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,34,1]},{"__type":"classinstance","name":"TextPos","args":[4,34,1]}]},"scan","a_valid_identifier",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/f42290c65de62f7b22c77408765efedfd61a3debe98319ac87259481e5560c1a b/.test-storage/tests/f42290c65de62f7b22c77408765efedfd61a3debe98319ac87259481e5560c1a deleted file mode 100644 index 1e69efd57..000000000 --- a/.test-storage/tests/f42290c65de62f7b22c77408765efedfd61a3debe98319ac87259481e5560c1a +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,13,1]},{"__type":"classinstance","name":"TextPos","args":[10,13,1]}]},"scan","4",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/f5e5e2201ed25fc6894b5f50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 b/.test-storage/tests/f5e5e2201ed25fc6894b5f50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 deleted file mode 100644 index 291ed6550..000000000 --- a/.test-storage/tests/f5e5e2201ed25fc6894b5f50504d75ed0e383f7f5a517dd736f7d5042dfb7a57 +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[34,28,1]},{"__type":"classinstance","name":"TextPos","args":[34,28,1]}]},"scan","ThisIsAnEvenLongerButStilCompletelyValidIdentifier",{"type":"scan","expect":"BoltIdentifier","split-lines":true}]} \ No newline at end of file diff --git a/.test-storage/tests/feb452354ed6939e5bdc3e31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d b/.test-storage/tests/feb452354ed6939e5bdc3e31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d deleted file mode 100644 index 73b1719e2..000000000 --- a/.test-storage/tests/feb452354ed6939e5bdc3e31eeaf600426e1da7be21c6ee4ff66c74d02c0c89d +++ /dev/null @@ -1 +0,0 @@ -{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,18,1]},{"__type":"classinstance","name":"TextPos","args":[4,18,1]}]},"scan","\"S+me w3!rd @SCII ch@r$\"",{"type":"scan","expect":"BoltStringLiteral","split-lines":true}]} \ No newline at end of file diff --git a/package.json b/package.json index 71750f31b..0b7582309 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "scripts": { "watch": "webpack --watch --config webpack.dev.js", "prepare": "webpack --config webpack.prod.js", - "test": "node lib/bin/bolt-test.js compare", + "test": "node lib/bin/bolt-test.js", "generate-ast": "tsastgen src/ast-spec.ts:src/ast.ts", "update-lkg": "node lib/bin/bolt-test.js create-snapshot lkg" }, diff --git a/src/ast-spec.ts b/src/ast-spec.ts index 437e77ef4..61b52ee94 100644 --- a/src/ast-spec.ts +++ b/src/ast-spec.ts @@ -54,7 +54,7 @@ export abstract class Syntax { [serializeTag]() { const result: any[] = []; for (const key of Object.keys(this)) { - if (key === 'kind' || key === 'parentNode' || key === 'errors' || key === 'type' || key === 'id') { + if (key === 'kind' || key === 'span' || key === 'parentNode' || key === 'errors' || key === 'type' || key === 'id') { continue; } result.push((this as any)[key]); diff --git a/src/ast.ts b/src/ast.ts index 483159a4c..98db0961e 100644 --- a/src/ast.ts +++ b/src/ast.ts @@ -50,7 +50,7 @@ export abstract class SyntaxBase { [serializeTag]() { const result: any[] = []; for (const key of Object.keys(this)) { - if (key === 'kind' || key === 'parentNode' || key === 'errors' || key === 'type' || key === 'id') { + if (key === 'kind' || key === 'span' || key === 'parentNode' || key === 'errors' || key === 'type' || key === 'id') { continue; } result.push((this as any)[key]); diff --git a/src/bin/bolt-test.ts b/src/bin/bolt-test.ts index 5d8c30eea..cc8cb962f 100644 --- a/src/bin/bolt-test.ts +++ b/src/bin/bolt-test.ts @@ -2,31 +2,31 @@ // NOTE The code in this file is not as clean as we want it to be, but we'll be upgrading our // test infrastructure anyways with version 1.0.0 so it does not matter much. -import "source-map-support/register" -import "reflect-metadata" - -import * as fs from "fs-extra" -import * as path from "path" -import * as crypto from "crypto" - import chalk from "chalk" -import { v4 as uuidv4 } from "uuid" -import yargs from "yargs" -import yaml, { FAILSAFE_SCHEMA } from "js-yaml" -import { sync as globSync } from "glob" -import ora, { Ora } from "ora" import { Parser as CommonmarkParser } from "commonmark" +import * as crypto from "crypto" +import { diffLines } from "diff" +import * as fs from "fs-extra" +import { sync as globSync } from "glob" +import yaml from "js-yaml" +import ora, { Ora } from "ora" +import * as path from "path" +import "reflect-metadata" +import "source-map-support/register" +import { inspect } from "util" +import yargs, { Argv } from "yargs" +import { Syntax, SyntaxKind } from "../ast" +import { Diagnostic, DiagnosticIndex, DiagnosticPrinter, E_TESTS_DO_NOT_COMPARE } from "../diagnostics" import { Parser } from "../parser" import { Scanner } from "../scanner" -import { SyntaxKind, Syntax } from "../ast" -import { Json, serialize, JsonObject, MapLike, upsearchSync, deepEqual, serializeTag, deserializable, deserialize, JsonArray, verbose, diffpatcher } from "../util" -import { DiagnosticIndex, DiagnosticPrinter, E_TESTS_DO_NOT_COMPARE, E_INVALID_TEST_COMPARE, E_NO_BOLTFILE_FOUND_IN_PATH_OR_PARENT_DIRS, Diagnostic } from "../diagnostics" import { TextFile, TextPos, TextSpan } from "../text" -import { diffLines } from "diff" -import { inspect } from "util" +import { deserializable, deserialize, Json, JsonObject, MapLike, serialize, serializeTag, upsearchSync, assert } from "../util" +import { resolve } from "path" +import { expect } from "chai" -const PACKAGE_ROOT = path.dirname(upsearchSync('package.json')!); -const STORAGE_DIR = path.join(PACKAGE_ROOT, '.test-storage'); +const PACKAGE_ROOT = path.resolve(path.dirname(upsearchSync('package.json')!)); +const DEFAULT_STORAGE_DIR = 'test-storage'; +const STORAGE_DIR = path.join(PACKAGE_ROOT, 'test-storage'); const diagnostics = new DiagnosticPrinter(); let spinner: Ora; @@ -34,11 +34,10 @@ let spinner: Ora; // TODO move some logic from TestSession to TestSuite // TODO hash the entire code base and have it serve as a unique key for TestSession -function toArray(value: T | T[]): T[] { - if (Array.isArray(value)) { - return value; +class FancyError extends Error { + constructor(public message: string) { + super(message); } - return value === undefined || value === null ? [] : [ value ] } @deserializable() @@ -46,137 +45,174 @@ class Test { public key: string; - public result?: any; - public error: Error | null = null; - constructor( public readonly span: TextSpan, public readonly type: string, public readonly text: string, public readonly data: JsonObject, + public result?: any, + public error: Error | null = null ) { this.key = hash([text, data]); } + /** + * Note that tests loose their associated test results when they are serialized. + */ [serializeTag]() { return [ this.span, this.type, this.text, this.data, + this.result, + this.error, ] } } -interface LoadTestsOptions { +interface ScanForTestsOptions { include: string[]; exclude: string[]; } -class TestSuite { - - constructor(private tests: Test[]) { - +function getKeyForCurrentSources() { + const hasher = crypto.createHash('sha512'); + for (const filepath of globSync('src/**/*.ts')) { + const contents = fs.readFileSync(filepath, 'binary'); + hasher.update(contents) + hasher.update('\0'); } - + return hasher.digest('hex') } -class TestSession { - - private failCount = 0; - - public key: string; - - constructor(private tests: Test[] = []) { - this.key = uuidv4(); - } - - public getAllTests() { - return this.tests[Symbol.iterator]();; - } - - public scanForTests(options?: LoadTestsOptions) { - const includes = options?.include ?? ['test/**/*.md']; - const excludes = options?.exclude ?? []; - spinner.text = 'Scanning for tests [0 found]'; - for (const include of includes) { - for (const filepath of globSync(include, { ignore: excludes })) { - spinner.info(`Found file ${filepath}`) - for (const test of loadTests(filepath)) { - this.tests.push(test); - spinner.text = `Scanning for tests [${this.tests.length} found]`; - } +function scanForTestsInCurrentSources(options: ScanForTestsOptions) { + const tests: Test[] = []; + const includes = options?.include ?? ['test/**/*.md']; + const excludes = options?.exclude ?? []; + spinner.text = 'Scanning for tests [0 found]'; + for (const include of includes) { + for (const filepath of globSync(include, { ignore: excludes })) { + spinner.info(`Found file ${filepath}`) + for (const test of loadTests(filepath)) { + tests.push(test); + spinner.text = `Scanning for tests [${tests.length} found]`; } } } + return tests; +} - public run() { - let i = 1; - //let failed = []; - for (const test of this.tests) { - spinner.text = `Running tests [${i}/${this.tests.length}]` - const runner = TEST_RUNNERS[test.type] - if (runner === undefined) { - spinner.warn(`Test runner '${test.type}' not found.`) - continue; - } - let result; - try { - test.result = runner(test); - } catch (e) { - test.error = e; - this.failCount++; - //failed.push(test); - spinner.warn(`The following test from ${path.relative(process.cwd(), test.span.file.fullPath)} failed with "${e.message}":\n\n${test.text}\n`) - } - i++; - } - if (this.failCount > 0) { - spinner.fail(`${this.failCount} tests failed.`) - } +function getSnapshotForCurrentSources(options: ScanForTestsOptions): TestSnapshot | null { + const key = getKeyForCurrentSources(); + const tests = scanForTestsInCurrentSources(options); + runTests(tests); + if (tests.some(t => t.error !== null)) { + return null; } + return new TestSnapshot(key, tests); +} - public save() { - fs.mkdirpSync(path.join(STORAGE_DIR, 'tests')); - for (const test of this.tests) { - fs.writeFileSync(path.join(STORAGE_DIR, 'tests', test.key), JSON.stringify(serialize(test)), 'utf8'); +function runTests(tests: Test[]): void { + let failCount = 0; + let i = 1; + for (const test of tests) { + spinner.text = `Running tests [${i}/${tests.length}]` + const runner = TEST_RUNNERS[test.type] + if (runner === undefined) { + spinner.warn(`Test runner '${test.type}' not found.`) + continue; } - fs.mkdirpSync(path.join(STORAGE_DIR, 'snapshots', this.key)) - for (const test of this.tests) { - fs.writeFileSync(path.join(STORAGE_DIR, 'snapshots', this.key, test.key), JSON.stringify(serialize(test.result)), 'utf8'); + let result; + try { + test.result = runner(test); + } catch (e) { + test.error = e; + failCount++; + spinner.warn(`The following test from ${path.relative(process.cwd(), test.span.file.fullPath)} failed with "${e.message}":\n\n${test.text}\n`) } + i++; + } + if (failCount > 0) { + spinner.fail(`${failCount} tests failed.`) + } +} + +//function saveTest(test: Test) { +// fs.mkdirpSync(path.join(STORAGE_DIR, 'tests')); +// fs.writeFileSync(path.join(STORAGE_DIR, 'tests', test.key), JSON.stringify(serialize(test)), 'utf8'); +//} + +@deserializable() +class TestSnapshot { + + constructor( + public key: string, + public tests: Test[], + ) { + fs.mkdirpSync(path.join(STORAGE_DIR, 'snapshots')); + fs.writeFileSync(path.join(STORAGE_DIR, 'snapshots', key), JSON.stringify(serialize(this)), 'utf8'); } public hasFailedTests() { - return this.failCount > 0; + return this.tests.some(t => t.error !== null); + } + + public saveTo(dir: string) { + fs.mkdirpSync(dir); + const fd = fs.openSync(path.join(dir, this.key), fs.constants.O_WRONLY); + try { + for (const test of this.tests) { + assert(test.error === null); + fs.writeSync(fd, JSON.stringify([serialize(test), serialize(test.result)]) + '\n', undefined, 'utf8'); + } + } finally { + fs.closeSync(fd); + } + } + + private [serializeTag]() { + return [ + this.key, + this.tests, + ] } } -function toString(value: any): string { +function loadSnapshot(key: string): TestSnapshot { + const resolvedKey = resolveSnapshotReference(key); + const data = readJson(path.join(STORAGE_DIR, 'snapshots', resolvedKey)); + if (data === null) { + throw new FancyError(`A snapshot named '${resolvedKey}' could not be loaded.`) + } + return deserialize(data); +} + +function valueToString(value: any): string { return inspect(value, { colors: false, depth: Infinity, }) } -function compare(actualKey: string, expectedKey: string) { +function compareTestSnapshots(actualSnapshot: TestSnapshot, expectedSnapshot: TestSnapshot) { - for (const testKey of fs.readdirSync(path.join(STORAGE_DIR, 'snapshots', actualKey))) { + for (const actualTest of actualSnapshot.tests) { - const test = deserialize(readJson(path.join(STORAGE_DIR, 'tests', testKey))) + const expectedTest = expectedSnapshot.tests.find(t => t.key === actualTest.key); + if (expectedTest === undefined) { + spinner.warn(`Test result '${actualTest.key}' has no correspoding result to compare against.`) + continue; + } - const actualData = readJson(path.join(STORAGE_DIR, 'snapshots', actualKey, testKey))!; - const expectedData = readJson(path.join(STORAGE_DIR, 'snapshots', expectedKey, testKey))!; - const actual = deserialize(actualData); - const expected = deserialize(expectedData); - const diffs = diffLines(toString(actual), toString(expected)); + const diffs = diffLines(valueToString(actualTest.result), valueToString(expectedTest.result)); if (diffs.some(diff => diff.added || diff.removed)) { diagnostics.add({ message: E_TESTS_DO_NOT_COMPARE, severity: 'error', - node: test, + node: actualTest, }); for (const diff of diffs) { let out = diff.value; @@ -187,7 +223,6 @@ function compare(actualKey: string, expectedKey: string) { } process.stderr.write(out); } - //lconsole.error(jsondiffpatch.formatters.console.format(delta, expected) + '\n'); } } @@ -259,21 +294,21 @@ function* loadTests(filepath: string): IterableIterator { } } -function findSnapshot(ref: string): string | null { +function resolveSnapshotReference(reference: string): string { // If `name` directly refers to a snapshot, we don't have any more work to do. - if (fs.existsSync(path.join(STORAGE_DIR, 'snapshots', ref))) { - return ref; + if (fs.existsSync(path.join(STORAGE_DIR, 'snapshots', reference))) { + return reference; } - // Try to read an alias, returning early if it was indeed found - const snapshotKey = tryReadFileSync(path.join(STORAGE_DIR, 'aliases', ref)); + // Try to read an alias, returning early if it was indeed found. + const snapshotKey = tryReadFileSync(path.join(STORAGE_DIR, 'aliases', reference)); if (snapshotKey !== null) { return snapshotKey; } // We don't support any more refs at the moment, so we indicate failure - return null; + throw new FancyError(`A test snapshot named '${reference}' was not found.`) } function readJson(filename: string): Json | null { @@ -367,6 +402,32 @@ const TEST_REPORTERS = { } +interface CommonArgv { + +} + +function createTestEngineFromArgs(args: CommonArgv) { + +} + +function wrapper(fn: (args: T) => number | undefined) { + return function (args: T) { + spinner = ora(`Initializing test session ...`).start(); + let exitCode; + try { + exitCode = fn(args); + } catch (e) { + if (e instanceof FancyError) { + spinner.fail(e.message); + process.exit(1); + } else { + throw e; + } + } + process.exit(exitCode ?? 0); + } +} + yargs .command(['$0 [pattern..]', 'run [pattern..]'], 'Run all tests on the current version of the compiler', @@ -382,33 +443,30 @@ yargs .array('alias') .describe('alias', 'Save the test results under the given alias') .default('alias', []) - , args => { + .string('storage-dir') + .alias('S', 'storage-dir') + .describe('storage-dir', 'The directory where test results will be stored') + .default('storage-dir', DEFAULT_STORAGE_DIR) + , wrapper(args => { - spinner = ora(`Initializing test session ...`).start(); + const testEngine = createTestEngineFromArgs(args); - const session = new TestSession(); - session.scanForTests(args as LoadTestsOptions); - session.run(); - session.save(); - - if (session.hasFailedTests()) { - return; + // Load and run all tests, saving the results to disk + const snapshot = getSnapshotForCurrentSources(args) + if (snapshot === null || snapshot.hasFailedTests()) { + return 1; } for (const alias of args.alias) { fs.mkdirpSync(path.join(STORAGE_DIR, 'aliases')) - fs.writeFileSync(path.join(STORAGE_DIR, 'aliases', alias), session.key, 'utf8') + fs.writeFileSync(path.join(STORAGE_DIR, 'aliases', alias), snapshot.key, 'utf8') } - const expectedKey = tryReadFileSync(path.join(STORAGE_DIR, 'aliases', 'lkg'), 'utf8'); - if (expectedKey === null) { - spinner.fail(`An alias for 'lkg' was not found.`); - process.exit(1); - } - compare(session.key, expectedKey) + const expectedSnapshot = loadSnapshot('lkg'); + compareTestSnapshots(snapshot, expectedSnapshot) } - ) + )) .command(['create-snapshot [alias..]'], 'Create a new snapshot from the output of the current compiler', yargs => yargs @@ -421,73 +479,72 @@ yargs .array('exclude') .describe('exclude', 'Files to never scan for tests') .default('exclude', []) - , args => { - - spinner = ora(`Initializing test session ...`).start(); + , wrapper(args => { // Load and run all tests, saving the results to disk - const session = new TestSession(); - session.scanForTests(args as LoadTestsOptions); - session.run(); - session.save(); + const snapshot = getSnapshotForCurrentSources(args); + if (snapshot === null || snapshot.hasFailedTests()) { + return 1; + } // Add any aliases that might have been requested for this snapshot fs.mkdirpSync(path.join(STORAGE_DIR, 'aliases')); for (const alias of args.alias) { - fs.writeFileSync(path.join(STORAGE_DIR, 'aliases', alias), session.key, 'utf8') + fs.writeFileSync(path.join(STORAGE_DIR, 'aliases', alias), snapshot.key, 'utf8') } + + // Output the unqiue identifier for this snapshot + spinner.succeed(`${snapshot.key} created.`) + } - ) + )) .command('compare [expected] [actual]', 'Compare the output of two given tests', + yargs => yargs - , args => { + .string('actual') + .describe('actual', 'A reference to a snapshot that will be checked') + .string('expected') + .describe('expected', 'A reference to a test snapshot that will serve as the ground truth') - spinner = ora(`Initializing test session ...`).start(); + , wrapper(args => { - let expectedSessionKey; - let actualSessionKey; + let expectedKey = args.expected ?? 'lkg'; + let expectedSnapshot = null; + let actualKey = args.actual ?? null; + let actualSnapshot = null; - if (args.expected !== undefined) { - expectedSessionKey = args.expected; - } else { - expectedSessionKey = 'lkg'; - } - - if (args.actual !== undefined) { - actualSessionKey = args.actual; - } else { + if (args.actual === undefined) { // Load and run all tests, saving the results to disk - const session = new TestSession(); - session.scanForTests(args as LoadTestsOptions); - session.run(); - session.save(); - actualSessionKey = session.key; + const snapshot = getSnapshotForCurrentSources(args); + if (snapshot === null) { + return 1; + } + actualSnapshot = snapshot; + actualKey = snapshot.key; } - spinner.info(`Comparing ${actualSessionKey} to ${expectedSessionKey}`) + if (expectedSnapshot === null) { + expectedSnapshot = loadSnapshot(expectedKey); + } + if (actualSnapshot === null) { + actualSnapshot = loadSnapshot(actualKey!); + } + + spinner.info(`Comparing test snapshot ${actualKey} to ${expectedKey}`) + + compareTestSnapshots(actualSnapshot, expectedSnapshot); - const keyA = findSnapshot(expectedSessionKey as string); - if (keyA === null) { - spinner.fail(`A test snapshot named '${expectedSessionKey}' was not found.`) - return 1; - } - const keyB = findSnapshot(actualSessionKey as string); - if (keyB === null) { - spinner.fail(`A test snapshot named '${actualSessionKey}' was not found.`) - return 1; - } - compare(keyA, keyB); } - ) + )) .command( 'clean', 'Clean up test snapshots that are unused', yargs => yargs + .string('keep') .array('keep') .default('keep', ['lkg']) .describe('keep', 'Keep the given aliases and anything they refer to') - , args => { - spinner = ora(`Initializing test session ...`).start(); + , wrapper(args => { const snapshotsToKeep = new Set(); for (const alias of fs.readdirSync(path.join(STORAGE_DIR, 'aliases'))) { if (args.keep.indexOf(alias) !== -1) { @@ -501,13 +558,14 @@ yargs } } for (const snapshotKey of fs.readdirSync(path.join(STORAGE_DIR, 'snapshots'))) { - if (!(snapshotKey in snapshotsToKeep)) { + if (!snapshotsToKeep.has(snapshotKey)) { fs.removeSync(path.join(STORAGE_DIR, 'snapshots', snapshotKey)); } } spinner.succeed('Cleanup complete.') + return 0; } - ) + )) .version() .help() diff --git a/test-storage/aliases/lkg b/test-storage/aliases/lkg new file mode 100644 index 000000000..2e37ac745 --- /dev/null +++ b/test-storage/aliases/lkg @@ -0,0 +1 @@ +533381409c88be6a3b19b035f6082831c15985315e186ea2430d1bc8d1f984818e1cd07f960756cbbb8f68e5f087afcd43bc2fa6eb4125ed0b21913f0d228e3f \ No newline at end of file diff --git a/test-storage/snapshots/533381409c88be6a3b19b035f6082831c15985315e186ea2430d1bc8d1f984818e1cd07f960756cbbb8f68e5f087afcd43bc2fa6eb4125ed0b21913f0d228e3f b/test-storage/snapshots/533381409c88be6a3b19b035f6082831c15985315e186ea2430d1bc8d1f984818e1cd07f960756cbbb8f68e5f087afcd43bc2fa6eb4125ed0b21913f0d228e3f new file mode 100644 index 000000000..faf22c7bd --- /dev/null +++ b/test-storage/snapshots/533381409c88be6a3b19b035f6082831c15985315e186ea2430d1bc8d1f984818e1cd07f960756cbbb8f68e5f087afcd43bc2fa6eb4125ed0b21913f0d228e3f @@ -0,0 +1 @@ +{"__type":"classinstance","name":"TestSnapshot","args":["533381409c88be6a3b19b035f6082831c15985315e186ea2430d1bc8d1f984818e1cd07f960756cbbb8f68e5f087afcd43bc2fa6eb4125ed0b21913f0d228e3f",[{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]}]},"scan","Foo",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["Foo",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[7,10,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,11,1]},{"__type":"classinstance","name":"TextPos","args":[8,11,1]}]},"scan","Bar",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["Bar",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,11,1]},{"__type":"classinstance","name":"TextPos","args":[11,11,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[12,12,1]},{"__type":"classinstance","name":"TextPos","args":[12,12,1]}]},"scan","Baz",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["Baz",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[12,12,1]},{"__type":"classinstance","name":"TextPos","args":[15,12,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,19,1]},{"__type":"classinstance","name":"TextPos","args":[4,19,1]}]},"scan","Var1",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["Var1",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,19,1]},{"__type":"classinstance","name":"TextPos","args":[8,19,5]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,20,1]},{"__type":"classinstance","name":"TextPos","args":[9,20,1]}]},"scan","Var2",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["Var2",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,20,1]},{"__type":"classinstance","name":"TextPos","args":[13,20,5]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,21,1]},{"__type":"classinstance","name":"TextPos","args":[14,21,1]}]},"scan","Var10029384",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["Var10029384",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,21,1]},{"__type":"classinstance","name":"TextPos","args":[25,21,12]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,27,1]},{"__type":"classinstance","name":"TextPos","args":[4,27,1]}]},"scan","ThisIsALongAndValidIdentifier",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["ThisIsALongAndValidIdentifier",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,27,1]},{"__type":"classinstance","name":"TextPos","args":[33,27,30]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[34,28,1]},{"__type":"classinstance","name":"TextPos","args":[34,28,1]}]},"scan","ThisIsAnEvenLongerButStilCompletelyValidIdentifier",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["ThisIsAnEvenLongerButStilCompletelyValidIdentifier",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[34,28,1]},{"__type":"classinstance","name":"TextPos","args":[84,28,51]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,34,1]},{"__type":"classinstance","name":"TextPos","args":[4,34,1]}]},"scan","a_valid_identifier",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["a_valid_identifier",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,34,1]},{"__type":"classinstance","name":"TextPos","args":[22,34,19]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[23,35,1]},{"__type":"classinstance","name":"TextPos","args":[23,35,1]}]},"scan","another__0000__valid_identfier",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["another__0000__valid_identfier",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[23,35,1]},{"__type":"classinstance","name":"TextPos","args":[53,35,31]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[54,36,1]},{"__type":"classinstance","name":"TextPos","args":[54,36,1]}]},"scan","_1",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["_1",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[54,36,1]},{"__type":"classinstance","name":"TextPos","args":[56,36,3]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[57,37,1]},{"__type":"classinstance","name":"TextPos","args":[57,37,1]}]},"scan","__2",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["__2",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[57,37,1]},{"__type":"classinstance","name":"TextPos","args":[60,37,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[61,38,1]},{"__type":"classinstance","name":"TextPos","args":[61,38,1]}]},"scan","___3",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["___3",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[61,38,1]},{"__type":"classinstance","name":"TextPos","args":[65,38,5]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,44,1]},{"__type":"classinstance","name":"TextPos","args":[4,44,1]}]},"scan","_",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["_",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,44,1]},{"__type":"classinstance","name":"TextPos","args":[5,44,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[6,45,1]},{"__type":"classinstance","name":"TextPos","args":[6,45,1]}]},"scan","__",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["__",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[6,45,1]},{"__type":"classinstance","name":"TextPos","args":[8,45,3]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,46,1]},{"__type":"classinstance","name":"TextPos","args":[9,46,1]}]},"scan","___",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["___",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[9,46,1]},{"__type":"classinstance","name":"TextPos","args":[12,46,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,53,1]},{"__type":"classinstance","name":"TextPos","args":[4,53,1]}]},"scan","℘rototype",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["℘rototype",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,53,1]},{"__type":"classinstance","name":"TextPos","args":[13,53,10]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,54,1]},{"__type":"classinstance","name":"TextPos","args":[14,54,1]}]},"scan","℮llipsis",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["℮llipsis",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[14,54,1]},{"__type":"classinstance","name":"TextPos","args":[22,54,9]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,60,1]},{"__type":"classinstance","name":"TextPos","args":[4,60,1]}]},"scan","α·β",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["α·β",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[4,60,1]},{"__type":"classinstance","name":"TextPos","args":[7,60,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,61,1]},{"__type":"classinstance","name":"TextPos","args":[8,61,1]}]},"scan","ano·teleia",{"type":"scan","expect":"BoltIdentifier","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIdentifier","args":["ano·teleia",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/000-bolt-identifier.md"]},{"__type":"classinstance","name":"TextPos","args":[8,61,1]},{"__type":"classinstance","name":"TextPos","args":[18,61,11]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]}]},"scan","\"Foo!\"",{"type":"scan","expect":"BoltStringLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltStringLiteral","args":["Foo!",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[10,10,7]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[11,11,1]},{"__type":"classinstance","name":"TextPos","args":[11,11,1]}]},"scan","\"Once upon a time ...\"",{"type":"scan","expect":"BoltStringLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltStringLiteral","args":["Once upon a time ...",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[11,11,1]},{"__type":"classinstance","name":"TextPos","args":[33,11,23]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,18,1]},{"__type":"classinstance","name":"TextPos","args":[4,18,1]}]},"scan","\"S+me w3!rd @SCII ch@r$\"",{"type":"scan","expect":"BoltStringLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltStringLiteral","args":["S+me w3!rd @SCII ch@r$",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/001-bolt-string-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,18,1]},{"__type":"classinstance","name":"TextPos","args":[28,18,25]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]}]},"scan","1",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"1"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,10,1]},{"__type":"classinstance","name":"TextPos","args":[5,10,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[6,11,1]},{"__type":"classinstance","name":"TextPos","args":[6,11,1]}]},"scan","2",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"2"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[6,11,1]},{"__type":"classinstance","name":"TextPos","args":[7,11,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,12,1]},{"__type":"classinstance","name":"TextPos","args":[8,12,1]}]},"scan","3",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"3"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,12,1]},{"__type":"classinstance","name":"TextPos","args":[9,12,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,13,1]},{"__type":"classinstance","name":"TextPos","args":[10,13,1]}]},"scan","4",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"4"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,13,1]},{"__type":"classinstance","name":"TextPos","args":[11,13,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,14,1]},{"__type":"classinstance","name":"TextPos","args":[12,14,1]}]},"scan","5",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"5"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,14,1]},{"__type":"classinstance","name":"TextPos","args":[13,14,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[14,15,1]},{"__type":"classinstance","name":"TextPos","args":[14,15,1]}]},"scan","6",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"6"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[14,15,1]},{"__type":"classinstance","name":"TextPos","args":[15,15,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,16,1]},{"__type":"classinstance","name":"TextPos","args":[16,16,1]}]},"scan","7",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"7"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,16,1]},{"__type":"classinstance","name":"TextPos","args":[17,16,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[18,17,1]},{"__type":"classinstance","name":"TextPos","args":[18,17,1]}]},"scan","8",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"8"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[18,17,1]},{"__type":"classinstance","name":"TextPos","args":[19,17,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,18,1]},{"__type":"classinstance","name":"TextPos","args":[20,18,1]}]},"scan","9",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"9"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,18,1]},{"__type":"classinstance","name":"TextPos","args":[21,18,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,19,1]},{"__type":"classinstance","name":"TextPos","args":[22,19,1]}]},"scan","0",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,19,1]},{"__type":"classinstance","name":"TextPos","args":[23,19,2]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,26,1]},{"__type":"classinstance","name":"TextPos","args":[4,26,1]}]},"scan","12345",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"12345"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,26,1]},{"__type":"classinstance","name":"TextPos","args":[9,26,6]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,27,1]},{"__type":"classinstance","name":"TextPos","args":[10,27,1]}]},"scan","99",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"99"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[10,27,1]},{"__type":"classinstance","name":"TextPos","args":[12,27,3]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,28,1]},{"__type":"classinstance","name":"TextPos","args":[13,28,1]}]},"scan","10",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"10"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,28,1]},{"__type":"classinstance","name":"TextPos","args":[15,28,3]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,29,1]},{"__type":"classinstance","name":"TextPos","args":[16,29,1]}]},"scan","01",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"1"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,29,1]},{"__type":"classinstance","name":"TextPos","args":[18,29,3]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[19,30,1]},{"__type":"classinstance","name":"TextPos","args":[19,30,1]}]},"scan","000",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[19,30,1]},{"__type":"classinstance","name":"TextPos","args":[22,30,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[23,31,1]},{"__type":"classinstance","name":"TextPos","args":[23,31,1]}]},"scan","0010",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"10"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[23,31,1]},{"__type":"classinstance","name":"TextPos","args":[27,31,5]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,37,1]},{"__type":"classinstance","name":"TextPos","args":[4,37,1]}]},"scan","0b0",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,37,1]},{"__type":"classinstance","name":"TextPos","args":[5,37,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["b0",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,37,2]},{"__type":"classinstance","name":"TextPos","args":[7,37,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,38,1]},{"__type":"classinstance","name":"TextPos","args":[8,38,1]}]},"scan","0b1",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,38,1]},{"__type":"classinstance","name":"TextPos","args":[9,38,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["b1",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[9,38,2]},{"__type":"classinstance","name":"TextPos","args":[11,38,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,39,1]},{"__type":"classinstance","name":"TextPos","args":[12,39,1]}]},"scan","0b10010",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,39,1]},{"__type":"classinstance","name":"TextPos","args":[13,39,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["b10010",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,39,2]},{"__type":"classinstance","name":"TextPos","args":[19,39,8]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,40,1]},{"__type":"classinstance","name":"TextPos","args":[20,40,1]}]},"scan","0b00100",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,40,1]},{"__type":"classinstance","name":"TextPos","args":[21,40,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["b00100",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[21,40,2]},{"__type":"classinstance","name":"TextPos","args":[27,40,8]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,41,1]},{"__type":"classinstance","name":"TextPos","args":[28,41,1]}]},"scan","0b00000",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,41,1]},{"__type":"classinstance","name":"TextPos","args":[29,41,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["b00000",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[29,41,2]},{"__type":"classinstance","name":"TextPos","args":[35,41,8]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,47,1]},{"__type":"classinstance","name":"TextPos","args":[4,47,1]}]},"scan","0b20001",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,47,1]},{"__type":"classinstance","name":"TextPos","args":[5,47,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["b20001",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,47,2]},{"__type":"classinstance","name":"TextPos","args":[11,47,8]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,48,1]},{"__type":"classinstance","name":"TextPos","args":[12,48,1]}]},"scan","0b12345",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[12,48,1]},{"__type":"classinstance","name":"TextPos","args":[13,48,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["b12345",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[13,48,2]},{"__type":"classinstance","name":"TextPos","args":[19,48,8]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,49,1]},{"__type":"classinstance","name":"TextPos","args":[20,49,1]}]},"scan","0b00003",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[20,49,1]},{"__type":"classinstance","name":"TextPos","args":[21,49,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["b00003",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[21,49,2]},{"__type":"classinstance","name":"TextPos","args":[27,49,8]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,55,1]},{"__type":"classinstance","name":"TextPos","args":[4,55,1]}]},"scan","0o0",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[4,55,1]},{"__type":"classinstance","name":"TextPos","args":[5,55,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["o0",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[5,55,2]},{"__type":"classinstance","name":"TextPos","args":[7,55,4]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,56,1]},{"__type":"classinstance","name":"TextPos","args":[8,56,1]}]},"scan","0o00000",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[8,56,1]},{"__type":"classinstance","name":"TextPos","args":[9,56,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["o00000",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[9,56,2]},{"__type":"classinstance","name":"TextPos","args":[15,56,8]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,57,1]},{"__type":"classinstance","name":"TextPos","args":[16,57,1]}]},"scan","0o007",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[16,57,1]},{"__type":"classinstance","name":"TextPos","args":[17,57,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["o007",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[17,57,2]},{"__type":"classinstance","name":"TextPos","args":[21,57,6]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,58,1]},{"__type":"classinstance","name":"TextPos","args":[22,58,1]}]},"scan","0o706",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[22,58,1]},{"__type":"classinstance","name":"TextPos","args":[23,58,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["o706",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[23,58,2]},{"__type":"classinstance","name":"TextPos","args":[27,58,6]}]}]}]},null]},{"__type":"classinstance","name":"Test","args":[{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,59,1]},{"__type":"classinstance","name":"TextPos","args":[28,59,1]}]},"scan","0o12345",{"type":"scan","expect":"BoltIntegerLiteral","split-lines":true},{"diagnostics":[],"tokens":[{"__type":"classinstance","name":"BoltIntegerLiteral","args":[{"__type":"bigint","value":"0"},{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[28,59,1]},{"__type":"classinstance","name":"TextPos","args":[29,59,2]}]}]},{"__type":"classinstance","name":"BoltIdentifier","args":["o12345",{"__type":"classinstance","name":"TextSpan","args":[{"__type":"classinstance","name":"TextFile","args":["test/scan/002-bolt-integer-literal.md"]},{"__type":"classinstance","name":"TextPos","args":[29,59,2]},{"__type":"classinstance","name":"TextPos","args":[35,59,8]}]}]}]},null]}]]} \ No newline at end of file