@greenpandastudios/aug-cli 0.19.0 → 0.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -6
- package/THIRD_PARTY_NOTICES.md +4 -0
- package/bin/aug.mjs +12 -2
- package/docs/about.md +27 -0
- package/docs/api/crypto.md +103 -69
- package/docs/api/io.md +35 -33
- package/docs/api/json.md +3 -3
- package/docs/api/memory.md +23 -19
- package/docs/api/time.md +10 -9
- package/docs/api/web.md +33 -38
- package/docs/compatibility.md +3 -3
- package/docs/contributing-benchmarks.md +38 -0
- package/docs/dev-containers.md +95 -0
- package/docs/diagnostics.md +15 -5
- package/docs/docker.md +174 -12
- package/docs/editor.md +35 -0
- package/docs/example-projects.json +206 -24
- package/docs/examples/approved-design/counters.md +34 -126
- package/docs/examples/approved-design/dependencies/august/0.20.1/io/contracts.md +178 -0
- package/docs/examples/approved-design/domain/app.md +13 -77
- package/docs/examples/approved-design/domain/export.md +5 -19
- package/docs/examples/approved-design/domain/models.md +4 -23
- package/docs/examples/approved-design/domain/numbers.md +24 -114
- package/docs/examples/approved-design/index.md +16 -7
- package/docs/examples/approved-design/main.md +19 -96
- package/docs/examples/benchmark/index.md +6 -5
- package/docs/examples/benchmark/main.md +7 -35
- package/docs/examples/cli-args/index.md +6 -5
- package/docs/examples/cli-args/main.md +6 -31
- package/docs/examples/collections/index.md +6 -5
- package/docs/examples/collections/main.md +7 -35
- package/docs/examples/collections-benchmark/index.md +6 -5
- package/docs/examples/collections-benchmark/main.md +7 -35
- package/docs/examples/cpu-benchmark/index.md +6 -5
- package/docs/examples/cpu-benchmark/main.md +5 -24
- package/docs/examples/developer-workflow/calculator.md +39 -186
- package/docs/examples/developer-workflow/dependencies/august/0.20.1/io/contracts.md +178 -0
- package/docs/examples/developer-workflow/index.md +16 -7
- package/docs/examples/developer-workflow/logging/console.md +10 -56
- package/docs/examples/developer-workflow/logging/export.md +4 -14
- package/docs/examples/developer-workflow/logging/logger.md +7 -43
- package/docs/examples/developer-workflow/main.md +17 -69
- package/docs/examples/drop/index.md +6 -5
- package/docs/examples/drop/main.md +7 -27
- package/docs/examples/drop/resource.md +7 -30
- package/docs/examples/errors/errors.md +7 -27
- package/docs/examples/errors/index.md +6 -5
- package/docs/examples/errors/main.md +7 -28
- package/docs/examples/ffi/index.md +6 -5
- package/docs/examples/ffi/main.md +6 -20
- package/docs/examples/ffi/native.md +8 -34
- package/docs/examples/generic-di/dependencies/august/0.20.1/io/contracts.md +178 -0
- package/docs/examples/generic-di/index.md +6 -5
- package/docs/examples/generic-di/main.md +9 -39
- package/docs/examples/generic-di/types.md +23 -92
- package/docs/examples/generics/index.md +6 -5
- package/docs/examples/generics/main.md +10 -47
- package/docs/examples/generics/types.md +25 -100
- package/docs/examples/hello/app/export.md +4 -12
- package/docs/examples/hello/app/greeter.md +13 -91
- package/docs/examples/hello/dependencies/august/0.20.1/io/contracts.md +178 -0
- package/docs/examples/hello/index.md +17 -6
- package/docs/examples/hello/logging/console.md +10 -54
- package/docs/examples/hello/logging/export.md +4 -14
- package/docs/examples/hello/logging/logger.md +7 -45
- package/docs/examples/hello/main.md +9 -39
- package/docs/examples/http-benchmark/index.md +6 -5
- package/docs/examples/http-benchmark/main.md +6 -20
- package/docs/examples/http-benchmark/routes.md +9 -31
- package/docs/examples/index.md +46 -29
- package/docs/examples/interceptors/app.md +20 -139
- package/docs/examples/interceptors/dependencies/august/0.20.1/io/contracts.md +178 -0
- package/docs/examples/interceptors/index.md +6 -5
- package/docs/examples/interceptors/interceptors.md +24 -148
- package/docs/examples/interceptors/logging.md +13 -76
- package/docs/examples/interceptors/main.md +10 -65
- package/docs/examples/json-benchmark/data.md +4 -20
- package/docs/examples/json-benchmark/dependencies/packages/@git/url_2d3c37c690c0fa115be1/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/contracts.md +67 -0
- package/docs/examples/json-benchmark/index.md +7 -5
- package/docs/examples/json-benchmark/main-yaml.md +20 -0
- package/docs/examples/json-benchmark/main.md +10 -49
- package/docs/examples/new-syntax/console.md +10 -52
- package/docs/examples/new-syntax/dependencies/august/0.20.1/io/contracts.md +178 -0
- package/docs/examples/new-syntax/greeter.md +13 -71
- package/docs/examples/new-syntax/index.md +6 -5
- package/docs/examples/new-syntax/logger.md +7 -43
- package/docs/examples/new-syntax/main.md +10 -53
- package/docs/examples/new-syntax/math.md +6 -24
- package/docs/examples/oidc-login/client/contracts.md +10 -61
- package/docs/examples/oidc-login/client/endpoints.md +32 -154
- package/docs/examples/oidc-login/client/export.md +5 -23
- package/docs/examples/oidc-login/client/login.md +234 -344
- package/docs/examples/oidc-login/client/logout.md +38 -143
- package/docs/examples/oidc-login/client/protocol.md +183 -304
- package/docs/examples/oidc-login/client/session.md +41 -149
- package/docs/examples/oidc-login/client/views.md +13 -58
- package/docs/examples/oidc-login/common/export.md +6 -26
- package/docs/examples/oidc-login/common/headers.md +42 -72
- package/docs/examples/oidc-login/common/keys.md +40 -164
- package/docs/examples/oidc-login/common/settings.md +24 -40
- package/docs/examples/oidc-login/common/views.md +7 -28
- package/docs/examples/oidc-login/dependencies/packages/@git/url_0eb7c89453c87681ed15/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/store.md +205 -0
- package/docs/examples/oidc-login/dependencies/packages/@git/url_2d3c37c690c0fa115be1/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/contracts.md +67 -0
- package/docs/examples/oidc-login/dependencies/packages/@git/url_897efafd565158fc4908/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/contracts.md +267 -0
- package/docs/examples/oidc-login/dependencies/packages/@git/url_9ef654c66d34ab8f5527/0.0.0-git.b14a0f9aa41f1ce58bd51133bcdc424033e40d40/contracts.md +415 -0
- package/docs/examples/oidc-login/dependencies/packages/@git/url_9ef654c66d34ab8f5527/0.0.0-git.b14a0f9aa41f1ce58bd51133bcdc424033e40d40/jose.md +271 -0
- package/docs/examples/oidc-login/dependencies/packages/@git/url_c092cd151499c4e1d8a1/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/contracts.md +89 -0
- package/docs/examples/oidc-login/index.md +8 -7
- package/docs/examples/oidc-login/main-yaml.md +7 -0
- package/docs/examples/oidc-login/main.md +26 -153
- package/docs/examples/oidc-login/provider/authorization.md +232 -275
- package/docs/examples/oidc-login/provider/contracts.md +24 -146
- package/docs/examples/oidc-login/provider/credentials.md +24 -57
- package/docs/examples/oidc-login/provider/discovery.md +48 -122
- package/docs/examples/oidc-login/provider/export.md +11 -37
- package/docs/examples/oidc-login/provider/token.md +159 -237
- package/docs/examples/oidc-login/provider/userinfo.md +47 -102
- package/docs/examples/oidc-login/provider/views.md +13 -53
- package/docs/examples/ownership/counter.md +17 -63
- package/docs/examples/ownership/index.md +6 -5
- package/docs/examples/ownership/main.md +7 -30
- package/docs/examples/ownership-transfer/dependencies/august/0.20.1/io/contracts.md +178 -0
- package/docs/examples/ownership-transfer/index.md +6 -5
- package/docs/examples/ownership-transfer/main.md +10 -52
- package/docs/examples/ownership-transfer/resource.md +15 -67
- package/docs/examples/packages-app/dependencies/packages/@example/aug-math/0.1.0/arithmetic.md +12 -50
- package/docs/examples/packages-app/index.md +7 -6
- package/docs/examples/packages-app/main.md +7 -25
- package/docs/examples/packages-math/aug-package-json.md +1 -1
- package/docs/examples/packages-math/index.md +7 -6
- package/docs/examples/packages-math/src/arithmetic.md +12 -50
- package/docs/examples/packages-math/src/export.md +4 -12
- package/docs/examples/startup-benchmark/index.md +6 -5
- package/docs/examples/startup-benchmark/main.md +5 -17
- package/docs/examples/visibility/counter.md +19 -67
- package/docs/examples/visibility/index.md +6 -5
- package/docs/examples/visibility/main.md +7 -31
- package/docs/examples/weather-api/forecasts.md +168 -0
- package/docs/examples/weather-api/index.md +42 -0
- package/docs/examples/weather-api/main-yaml.md +21 -0
- package/docs/examples/weather-api/main.md +65 -0
- package/docs/examples.json +10 -0
- package/docs/getting-started.md +105 -2
- package/docs/grammar.md +6 -4
- package/docs/guides/change-a-module.md +64 -0
- package/docs/guides/index.md +27 -0
- package/docs/index.md +51 -29
- package/docs/language-conformance.md +1 -1
- package/docs/language-constructs.md +22 -22
- package/docs/language-design-audit.md +1 -1
- package/docs/learn/data-and-errors.md +77 -0
- package/docs/learn/index.md +30 -0
- package/docs/learn/modules-and-dependencies.md +73 -0
- package/docs/learn/state-and-tests.md +71 -0
- package/docs/learn/values-and-functions.md +62 -0
- package/docs/lesson-failures.json +8 -0
- package/docs/maintaining-docs.md +16 -4
- package/docs/packages.md +72 -126
- package/docs/performance.md +13 -41
- package/docs/production-readiness.md +5 -4
- package/docs/public/downloads/approved-design.zip +0 -0
- package/docs/public/downloads/benchmark.zip +0 -0
- package/docs/public/downloads/cli-args.zip +0 -0
- package/docs/public/downloads/collections-benchmark.zip +0 -0
- package/docs/public/downloads/collections.zip +0 -0
- package/docs/public/downloads/cpu-benchmark.zip +0 -0
- package/docs/public/downloads/developer-workflow.zip +0 -0
- package/docs/public/downloads/drop.zip +0 -0
- package/docs/public/downloads/errors.zip +0 -0
- package/docs/public/downloads/ffi.zip +0 -0
- package/docs/public/downloads/generic-di.zip +0 -0
- package/docs/public/downloads/generics.zip +0 -0
- package/docs/public/downloads/hello.zip +0 -0
- package/docs/public/downloads/http-benchmark.zip +0 -0
- package/docs/public/downloads/interceptors.zip +0 -0
- package/docs/public/downloads/json-benchmark.zip +0 -0
- package/docs/public/downloads/new-syntax.zip +0 -0
- package/docs/public/downloads/oidc-login.zip +0 -0
- package/docs/public/downloads/ownership-transfer.zip +0 -0
- package/docs/public/downloads/ownership.zip +0 -0
- package/docs/public/downloads/packages-app.zip +0 -0
- package/docs/public/downloads/packages-math.zip +0 -0
- package/docs/public/downloads/startup-benchmark.zip +0 -0
- package/docs/public/downloads/visibility.zip +0 -0
- package/docs/public/downloads/weather-api.zip +0 -0
- package/docs/reference.md +23 -17
- package/docs/releasing.md +29 -15
- package/docs/research/code-to-natural-language.md +108 -0
- package/docs/research/ecosystem-workflow.md +41 -0
- package/docs/research/wiki-editorial-design.md +71 -0
- package/docs/roadmap.md +1 -1
- package/docs/specifications.md +27 -11
- package/docs/testing.md +19 -5
- package/docs/tooling.md +25 -12
- package/docs/weather-api.md +65 -0
- package/docs/web.md +50 -18
- package/docs/writing-docs.md +49 -0
- package/examples/{hello/.aug-spec/august/0.19.0 → approved-design/.aug-spec/august/0.20.1}/io/contracts.aug +4 -3
- package/examples/approved-design/.aug-spec/august/0.20.1/io/contracts.aug.md +82 -0
- package/examples/approved-design/.aug-spec/manifest.json +3 -3
- package/examples/approved-design/counters.aug +5 -4
- package/examples/approved-design/counters.aug.md +25 -132
- package/examples/approved-design/domain/app.aug +2 -1
- package/examples/approved-design/domain/app.aug.md +10 -80
- package/examples/approved-design/domain/export.aug +1 -0
- package/examples/approved-design/domain/export.aug.md +4 -20
- package/examples/approved-design/domain/models.aug +1 -0
- package/examples/approved-design/domain/models.aug.md +3 -25
- package/examples/approved-design/domain/numbers.aug +3 -2
- package/examples/approved-design/domain/numbers.aug.md +19 -116
- package/examples/approved-design/main.aug +1 -0
- package/examples/approved-design/main.aug.md +12 -95
- package/examples/benchmark/.aug-spec/manifest.json +1 -1
- package/examples/benchmark/main.aug +1 -0
- package/examples/benchmark/main.aug.md +6 -36
- package/examples/cli-args/.aug-spec/manifest.json +1 -1
- package/examples/cli-args/main.aug +1 -0
- package/examples/cli-args/main.aug.md +5 -32
- package/examples/collections/.aug-spec/manifest.json +1 -1
- package/examples/collections/main.aug +1 -0
- package/examples/collections/main.aug.md +6 -36
- package/examples/{generic-di/.aug-spec/august/0.19.0 → developer-workflow/.aug-spec/august/0.20.1}/io/contracts.aug +4 -3
- package/examples/developer-workflow/.aug-spec/august/0.20.1/io/contracts.aug.md +82 -0
- package/examples/developer-workflow/.aug-spec/manifest.json +3 -3
- package/examples/developer-workflow/calculator.aug +3 -2
- package/examples/developer-workflow/calculator.aug.md +28 -189
- package/examples/developer-workflow/logging/console.aug +2 -1
- package/examples/developer-workflow/logging/console.aug.md +7 -57
- package/examples/developer-workflow/logging/export.aug +1 -0
- package/examples/developer-workflow/logging/export.aug.md +3 -15
- package/examples/developer-workflow/logging/logger.aug +1 -0
- package/examples/developer-workflow/logging/logger.aug.md +6 -46
- package/examples/developer-workflow/main.aug +1 -0
- package/examples/developer-workflow/main.aug.md +10 -68
- package/examples/drop/.aug-spec/manifest.json +1 -1
- package/examples/drop/main.aug +1 -0
- package/examples/drop/main.aug.md +6 -28
- package/examples/drop/resource.aug +1 -0
- package/examples/drop/resource.aug.md +6 -34
- package/examples/errors/.aug-spec/manifest.json +1 -1
- package/examples/errors/errors.aug +2 -1
- package/examples/errors/errors.aug.md +4 -27
- package/examples/errors/main.aug +1 -0
- package/examples/errors/main.aug.md +6 -29
- package/examples/ffi/.aug-spec/manifest.json +1 -1
- package/examples/ffi/main.aug +1 -0
- package/examples/ffi/main.aug.md +5 -21
- package/examples/ffi/native.aug +2 -1
- package/examples/ffi/native.aug.md +5 -35
- package/examples/{approved-design/.aug-spec/august/0.19.0 → generic-di/.aug-spec/august/0.20.1}/io/contracts.aug +4 -3
- package/examples/generic-di/.aug-spec/august/0.20.1/io/contracts.aug.md +82 -0
- package/examples/generic-di/.aug-spec/manifest.json +3 -3
- package/examples/generic-di/main.aug +1 -0
- package/examples/generic-di/main.aug.md +8 -40
- package/examples/generic-di/types.aug +3 -2
- package/examples/generic-di/types.aug.md +18 -97
- package/examples/generics/.aug-spec/manifest.json +1 -1
- package/examples/generics/main.aug +1 -0
- package/examples/generics/main.aug.md +9 -48
- package/examples/generics/types.aug +4 -3
- package/examples/generics/types.aug.md +18 -104
- package/examples/{developer-workflow/.aug-spec/august/0.19.0 → hello/.aug-spec/august/0.20.1}/io/contracts.aug +4 -3
- package/examples/hello/.aug-spec/august/0.20.1/io/contracts.aug.md +82 -0
- package/examples/hello/.aug-spec/manifest.json +3 -3
- package/examples/hello/app/export.aug +1 -0
- package/examples/hello/app/export.aug.md +3 -13
- package/examples/hello/app/greeter.aug +2 -1
- package/examples/hello/app/greeter.aug.md +10 -94
- package/examples/hello/logging/console.aug +2 -1
- package/examples/hello/logging/console.aug.md +7 -55
- package/examples/hello/logging/export.aug +1 -0
- package/examples/hello/logging/export.aug.md +3 -15
- package/examples/hello/logging/logger.aug +1 -0
- package/examples/hello/logging/logger.aug.md +6 -48
- package/examples/hello/main.aug +1 -0
- package/examples/hello/main.aug.md +8 -40
- package/examples/interceptors/.aug-spec/august/0.20.1/io/contracts.aug +37 -0
- package/examples/interceptors/.aug-spec/august/0.20.1/io/contracts.aug.md +82 -0
- package/examples/interceptors/.aug-spec/manifest.json +3 -3
- package/examples/interceptors/app.aug +3 -2
- package/examples/interceptors/app.aug.md +15 -141
- package/examples/interceptors/interceptors.aug +3 -2
- package/examples/interceptors/interceptors.aug.md +19 -152
- package/examples/interceptors/logging.aug +2 -1
- package/examples/interceptors/logging.aug.md +10 -79
- package/examples/interceptors/main.aug +1 -0
- package/examples/interceptors/main.aug.md +9 -66
- package/examples/new-syntax/.aug-spec/august/0.20.1/io/contracts.aug +37 -0
- package/examples/new-syntax/.aug-spec/august/0.20.1/io/contracts.aug.md +82 -0
- package/examples/new-syntax/.aug-spec/manifest.json +3 -3
- package/examples/new-syntax/console.aug +2 -1
- package/examples/new-syntax/console.aug.md +7 -53
- package/examples/new-syntax/greeter.aug +2 -1
- package/examples/new-syntax/greeter.aug.md +10 -74
- package/examples/new-syntax/logger.aug +1 -0
- package/examples/new-syntax/logger.aug.md +6 -46
- package/examples/new-syntax/main.aug +1 -0
- package/examples/new-syntax/main.aug.md +9 -54
- package/examples/new-syntax/math.aug +2 -1
- package/examples/new-syntax/math.aug.md +3 -24
- package/examples/oidc-login/.aug-spec/manifest.json +13 -13
- package/examples/oidc-login/.aug-spec/packages/@git/url_0eb7c89453c87681ed15/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/store.aug.md +71 -0
- package/examples/oidc-login/.aug-spec/packages/@git/url_2d3c37c690c0fa115be1/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/contracts.aug.md +17 -0
- package/examples/oidc-login/.aug-spec/packages/@git/url_897efafd565158fc4908/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/contracts.aug.md +125 -0
- package/examples/oidc-login/.aug-spec/{august/0.19.0/crypto → packages/@git/url_9ef654c66d34ab8f5527/0.0.0-git.b14a0f9aa41f1ce58bd51133bcdc424033e40d40}/contracts.aug +12 -11
- package/examples/oidc-login/.aug-spec/packages/@git/url_9ef654c66d34ab8f5527/0.0.0-git.b14a0f9aa41f1ce58bd51133bcdc424033e40d40/contracts.aug.md +244 -0
- package/examples/oidc-login/.aug-spec/{august/0.19.0/crypto → packages/@git/url_9ef654c66d34ab8f5527/0.0.0-git.b14a0f9aa41f1ce58bd51133bcdc424033e40d40}/jose.aug +6 -5
- package/examples/oidc-login/.aug-spec/packages/@git/url_9ef654c66d34ab8f5527/0.0.0-git.b14a0f9aa41f1ce58bd51133bcdc424033e40d40/jose.aug.md +71 -0
- package/examples/oidc-login/.aug-spec/packages/@git/url_c092cd151499c4e1d8a1/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301/contracts.aug.md +30 -0
- package/examples/oidc-login/aug.lock.json +100 -0
- package/examples/oidc-login/client/contracts.aug +1 -0
- package/examples/oidc-login/client/contracts.aug.md +9 -66
- package/examples/oidc-login/client/endpoints.aug +6 -5
- package/examples/oidc-login/client/endpoints.aug.md +13 -145
- package/examples/oidc-login/client/export.aug +1 -0
- package/examples/oidc-login/client/export.aug.md +4 -24
- package/examples/oidc-login/client/login.aug +7 -6
- package/examples/oidc-login/client/login.aug.md +25 -303
- package/examples/oidc-login/client/logout.aug +5 -4
- package/examples/oidc-login/client/logout.aug.md +13 -135
- package/examples/oidc-login/client/protocol.aug +7 -6
- package/examples/oidc-login/client/protocol.aug.md +36 -283
- package/examples/oidc-login/client/session.aug +5 -4
- package/examples/oidc-login/client/session.aug.md +12 -139
- package/examples/oidc-login/client/views.aug +3 -2
- package/examples/oidc-login/client/views.aug.md +8 -57
- package/examples/oidc-login/common/export.aug +1 -0
- package/examples/oidc-login/common/export.aug.md +5 -27
- package/examples/oidc-login/common/headers.aug +4 -3
- package/examples/oidc-login/common/headers.aug.md +9 -67
- package/examples/oidc-login/common/keys.aug +6 -5
- package/examples/oidc-login/common/keys.aug.md +29 -165
- package/examples/oidc-login/common/settings.aug +2 -1
- package/examples/oidc-login/common/settings.aug.md +5 -39
- package/examples/oidc-login/common/views.aug +2 -1
- package/examples/oidc-login/common/views.aug.md +4 -28
- package/examples/oidc-login/main.aug +6 -16
- package/examples/oidc-login/main.aug.md +17 -146
- package/examples/oidc-login/main.yaml +7 -0
- package/examples/oidc-login/provider/authorization.aug +7 -6
- package/examples/oidc-login/provider/authorization.aug.md +23 -238
- package/examples/oidc-login/provider/contracts.aug +1 -0
- package/examples/oidc-login/provider/contracts.aug.md +23 -158
- package/examples/oidc-login/provider/credentials.aug +3 -2
- package/examples/oidc-login/provider/credentials.aug.md +9 -53
- package/examples/oidc-login/provider/discovery.aug +4 -3
- package/examples/oidc-login/provider/discovery.aug.md +11 -118
- package/examples/oidc-login/provider/export.aug +1 -0
- package/examples/oidc-login/provider/export.aug.md +6 -34
- package/examples/oidc-login/provider/token.aug +6 -5
- package/examples/oidc-login/provider/token.aug.md +16 -204
- package/examples/oidc-login/provider/userinfo.aug +4 -3
- package/examples/oidc-login/provider/userinfo.aug.md +10 -92
- package/examples/oidc-login/provider/views.aug +3 -2
- package/examples/oidc-login/provider/views.aug.md +8 -52
- package/examples/ownership/.aug-spec/manifest.json +1 -1
- package/examples/ownership/counter.aug +3 -2
- package/examples/ownership/counter.aug.md +12 -66
- package/examples/ownership/main.aug +1 -0
- package/examples/ownership/main.aug.md +6 -31
- package/examples/ownership-transfer/.aug-spec/august/0.20.1/io/contracts.aug +37 -0
- package/examples/ownership-transfer/.aug-spec/august/0.20.1/io/contracts.aug.md +82 -0
- package/examples/ownership-transfer/.aug-spec/manifest.json +3 -3
- package/examples/ownership-transfer/main.aug +1 -0
- package/examples/ownership-transfer/main.aug.md +9 -53
- package/examples/ownership-transfer/resource.aug +2 -1
- package/examples/ownership-transfer/resource.aug.md +12 -71
- package/examples/packages/app/.aug-spec/manifest.json +1 -1
- package/examples/packages/app/.aug-spec/packages/@example/aug-math/0.1.0/arithmetic.aug +2 -1
- package/examples/packages/app/.aug-spec/packages/@example/aug-math/0.1.0/arithmetic.aug.md +9 -51
- package/examples/packages/app/main.aug +1 -0
- package/examples/packages/app/main.aug.md +6 -26
- package/examples/packages/math/.aug-spec/manifest.json +1 -1
- package/examples/packages/math/aug-package.json +1 -1
- package/examples/packages/math/src/arithmetic.aug +2 -1
- package/examples/packages/math/src/arithmetic.aug.md +9 -51
- package/examples/packages/math/src/export.aug +1 -0
- package/examples/packages/math/src/export.aug.md +3 -13
- package/examples/visibility/.aug-spec/manifest.json +1 -1
- package/examples/visibility/counter.aug +4 -3
- package/examples/visibility/counter.aug.md +12 -68
- package/examples/visibility/main.aug +1 -0
- package/examples/visibility/main.aug.md +6 -32
- package/examples/weather-api/.aug-spec/manifest.json +8 -0
- package/examples/weather-api/AGENTS.md +17 -0
- package/examples/weather-api/README.md +19 -0
- package/examples/weather-api/forecasts.aug +47 -0
- package/examples/weather-api/forecasts.aug.md +32 -0
- package/examples/weather-api/main.aug +4 -0
- package/examples/weather-api/main.aug.md +15 -0
- package/examples/weather-api/main.yaml +5 -0
- package/examples/weather-api/weather.http +5 -0
- package/package.json +3 -4
- package/scripts/bootstrap-native.mjs +181 -106
- package/scripts/native-setup.mjs +98 -0
- package/scripts/native-toolchain.mjs +28 -0
- package/src/builtins.js +1 -1
- package/src/checker.js +259 -72
- package/src/cli.js +114 -20
- package/src/codegen.js +1 -1
- package/src/config.js +1 -1
- package/src/contracts.js +10 -0
- package/src/editor.js +71 -16
- package/src/fixes.js +90 -2
- package/src/formatter.js +19 -8
- package/src/git-packages.js +110 -0
- package/src/help.js +24 -23
- package/src/http-contracts.js +14 -0
- package/src/http-policies.js +5 -5
- package/src/libraries.js +1 -1
- package/src/lsp.js +14 -5
- package/src/native.js +19 -13
- package/src/navigation.js +4 -2
- package/src/openapi.js +5 -4
- package/src/package-locking.js +45 -0
- package/src/package-manager.js +251 -67
- package/src/parser.js +13 -5
- package/src/policies.js +3 -3
- package/src/project-init.js +78 -4
- package/src/project.js +9 -7
- package/src/semantic.js +46 -2
- package/src/snippets.js +59 -0
- package/src/spec-hints.js +56 -0
- package/src/spec-tree.js +241 -0
- package/src/spec.js +626 -303
- package/docs/examples/approved-design/dependencies/august/0.19.0/io/contracts.md +0 -395
- package/docs/examples/developer-workflow/dependencies/august/0.19.0/io/contracts.md +0 -395
- package/docs/examples/generic-di/dependencies/august/0.19.0/io/contracts.md +0 -395
- package/docs/examples/hello/dependencies/august/0.19.0/io/contracts.md +0 -395
- package/docs/examples/interceptors/dependencies/august/0.19.0/io/contracts.md +0 -395
- package/docs/examples/json-benchmark/dependencies/august/0.19.0/json/contracts.md +0 -103
- package/docs/examples/new-syntax/dependencies/august/0.19.0/io/contracts.md +0 -395
- package/docs/examples/oidc-login/dependencies/august/0.19.0/crypto/contracts.md +0 -925
- package/docs/examples/oidc-login/dependencies/august/0.19.0/crypto/jose.md +0 -434
- package/docs/examples/oidc-login/dependencies/august/0.19.0/json/contracts.md +0 -103
- package/docs/examples/oidc-login/dependencies/august/0.19.0/memory/store.md +0 -374
- package/docs/examples/oidc-login/dependencies/august/0.19.0/time/contracts.md +0 -150
- package/docs/examples/oidc-login/dependencies/august/0.19.0/web/contracts.md +0 -532
- package/docs/examples/ownership-transfer/dependencies/august/0.19.0/io/contracts.md +0 -395
- package/examples/approved-design/.aug-spec/august/0.19.0/io/contracts.aug.md +0 -316
- package/examples/developer-workflow/.aug-spec/august/0.19.0/io/contracts.aug.md +0 -316
- package/examples/generic-di/.aug-spec/august/0.19.0/io/contracts.aug.md +0 -316
- package/examples/hello/.aug-spec/august/0.19.0/io/contracts.aug.md +0 -316
- package/examples/interceptors/.aug-spec/august/0.19.0/io/contracts.aug +0 -36
- package/examples/interceptors/.aug-spec/august/0.19.0/io/contracts.aug.md +0 -316
- package/examples/new-syntax/.aug-spec/august/0.19.0/io/contracts.aug +0 -36
- package/examples/new-syntax/.aug-spec/august/0.19.0/io/contracts.aug.md +0 -316
- package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/contracts.aug.md +0 -791
- package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/jose.aug.md +0 -266
- package/examples/oidc-login/.aug-spec/august/0.19.0/json/contracts.aug.md +0 -55
- package/examples/oidc-login/.aug-spec/august/0.19.0/memory/store.aug.md +0 -250
- package/examples/oidc-login/.aug-spec/august/0.19.0/time/contracts.aug.md +0 -96
- package/examples/oidc-login/.aug-spec/august/0.19.0/web/contracts.aug.md +0 -420
- package/examples/ownership-transfer/.aug-spec/august/0.19.0/io/contracts.aug +0 -36
- package/examples/ownership-transfer/.aug-spec/august/0.19.0/io/contracts.aug.md +0 -316
- /package/examples/oidc-login/.aug-spec/{august/0.19.0/memory → packages/@git/url_0eb7c89453c87681ed15/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301}/store.aug +0 -0
- /package/examples/oidc-login/.aug-spec/{august/0.19.0/json → packages/@git/url_2d3c37c690c0fa115be1/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301}/contracts.aug +0 -0
- /package/examples/oidc-login/.aug-spec/{august/0.19.0/web → packages/@git/url_897efafd565158fc4908/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301}/contracts.aug +0 -0
- /package/examples/oidc-login/.aug-spec/{august/0.19.0/time → packages/@git/url_c092cd151499c4e1d8a1/0.0.0-git.a39fc582565d4fca40be4f75fa304d71adc69301}/contracts.aug +0 -0
|
@@ -1,96 +1,27 @@
|
|
|
1
1
|
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
2
|
|
|
3
|
-
# `logging.aug`
|
|
4
|
-
|
|
5
|
-
August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
|
|
6
|
-
|
|
7
|
-
## In this file
|
|
8
|
-
|
|
9
|
-
- [`Logger`](logging.aug.md#symbol-Logger) is an interface.
|
|
10
|
-
- [`ConsoleLogger`](logging.aug.md#symbol-ConsoleLogger) is a class implementing `Logger`.
|
|
3
|
+
# `logging.aug`
|
|
11
4
|
|
|
12
5
|
<a id="symbol-Logger"></a>
|
|
13
|
-
|
|
14
|
-
## `Logger`
|
|
15
|
-
|
|
16
|
-
[source](logging.aug#L3)
|
|
17
|
-
|
|
18
|
-
Interface.
|
|
19
|
-
|
|
20
|
-
**Author documentation**
|
|
6
|
+
## `Logger` · interface · [source](logging.aug#L4)
|
|
21
7
|
|
|
22
8
|
Writes a message to the application log.
|
|
23
9
|
|
|
24
10
|
<a id="symbol-Logger.log"></a>
|
|
11
|
+
### `Logger.log` · [source](logging.aug#L6)
|
|
25
12
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
[source](logging.aug#L5)
|
|
29
|
-
|
|
30
|
-
**Inputs**
|
|
31
|
-
|
|
32
|
-
- `console` ([`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)) — injected; callers omit it.
|
|
33
|
-
- `message` (`string`) — required labeled input.
|
|
34
|
-
|
|
35
|
-
Returns: no value.
|
|
36
|
-
|
|
37
|
-
Capabilities: [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
38
|
-
|
|
39
|
-
Interface contract. A selected implementation supplies the behavior.
|
|
40
|
-
|
|
41
|
-
**Author documentation**
|
|
42
|
-
|
|
43
|
-
**Parameters**
|
|
44
|
-
- `message`: Text to display.
|
|
13
|
+
It takes `message` as a string (Text to display). It gets `console` ([`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console)) from dependency injection. It can call [`Console.write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write).
|
|
45
14
|
|
|
46
15
|
<a id="symbol-ConsoleLogger"></a>
|
|
16
|
+
## `ConsoleLogger` · class · [source](logging.aug#L9)
|
|
47
17
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
[source](logging.aug#L8)
|
|
51
|
-
|
|
52
|
-
Behavioral class.
|
|
53
|
-
|
|
54
|
-
Satisfies [`Logger`](logging.aug.md#symbol-Logger).
|
|
55
|
-
|
|
56
|
-
**Author documentation**
|
|
57
|
-
|
|
58
|
-
Console logger shared by interceptor instances and the application.
|
|
18
|
+
Console logger shared by interceptor instances and the application. It implements [`Logger`](logging.aug.md#symbol-Logger).
|
|
59
19
|
|
|
60
20
|
<a id="symbol-ConsoleLogger.log"></a>
|
|
21
|
+
### `ConsoleLogger.log` · [source](logging.aug#L10)
|
|
61
22
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
[source](logging.aug#L9)
|
|
65
|
-
|
|
66
|
-
**Inputs**
|
|
67
|
-
|
|
68
|
-
- `console` ([`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)) — injected; callers omit it.
|
|
69
|
-
- `message` (`string`) — required labeled input.
|
|
70
|
-
|
|
71
|
-
Returns: no value.
|
|
72
|
-
|
|
73
|
-
Capabilities: [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
74
|
-
|
|
75
|
-
**What it does**
|
|
76
|
-
|
|
77
|
-
- Call [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write) on `console` with `value` = `message`.
|
|
78
|
-
|
|
79
|
-
**Author documentation**
|
|
80
|
-
|
|
81
|
-
**Parameters**
|
|
82
|
-
- `message`: Text to display.
|
|
83
|
-
|
|
84
|
-
## Dependencies used by this file
|
|
85
|
-
|
|
86
|
-
Only referenced types and operations appear here. Each name links to its complete specification.
|
|
87
|
-
|
|
88
|
-
### [`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)
|
|
89
|
-
|
|
90
|
-
Capability interface from `august.io`.
|
|
91
|
-
|
|
92
|
-
- [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write)<`T`> (`value`: `T`) → `void`.
|
|
23
|
+
It takes `message` as a string (Text to display). It gets `console` ([`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console)) from dependency injection. It passes `message` to [`console.write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write).
|
|
93
24
|
|
|
94
|
-
##
|
|
25
|
+
## Dependencies
|
|
95
26
|
|
|
96
|
-
|
|
27
|
+
It uses [`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console) ([`write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write)) from `august.io`.
|
|
@@ -1,76 +1,19 @@
|
|
|
1
1
|
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
2
|
|
|
3
|
-
# `main.aug`
|
|
3
|
+
# `main.aug`
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Providers
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
`Console` is provided by [`SystemConsole`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-SystemConsole). The same instance is shared. `Logger` is provided by [`ConsoleLogger`](logging.aug.md#symbol-ConsoleLogger). The same instance is shared.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
- Run startup operations with checked error recovery.
|
|
11
|
-
- Run 2 other startup steps in source order.
|
|
9
|
+
## Startup
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
It prints [`describe`](app.aug.md#symbol-describe) with `label` `"value"` and `x` `6` using injected `Logger` for `logger` and `Console` for `console`. If this work raises [`ValidationError`](interceptors.aug.md#symbol-ValidationError), it prints `"rejected"`. It sets `greeter` to a [`Greeter`](app.aug.md#symbol-Greeter) with `name` `"AugScript"` using injected `Logger` for `_logger`. It prints [`greeter.greet`](app.aug.md#symbol-Greeter.greet) using injected `Logger` for `logger` and `Console` for `console`.
|
|
14
12
|
|
|
15
|
-
|
|
13
|
+
It tries to call [`describe`](app.aug.md#symbol-describe) with `x` `-1` and `label` `"invalid"` using injected `Logger` for `logger` and `Console` for `console`. If this work raises [`ValidationError`](interceptors.aug.md#symbol-ValidationError), it prints `"rejected"`.
|
|
16
14
|
|
|
17
|
-
|
|
18
|
-
- Provide [`ConsoleLogger`](logging.aug.md#symbol-ConsoleLogger) when `Logger` is requested. Reuse one instance.
|
|
15
|
+
## Dependencies
|
|
19
16
|
|
|
20
|
-
|
|
17
|
+
It uses [`SystemConsole`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-SystemConsole) from `august.io`. It uses [`Greeter`](app.aug.md#symbol-Greeter) ([`greet`](app.aug.md#symbol-Greeter.greet)) and [`describe`](app.aug.md#symbol-describe) from `app`. It uses [`ValidationError`](interceptors.aug.md#symbol-ValidationError) from `interceptors`. It uses [`ConsoleLogger`](logging.aug.md#symbol-ConsoleLogger) from `logging`.
|
|
21
18
|
|
|
22
|
-
-
|
|
23
|
-
- Call `print` with `value` = call [`describe`](app.aug.md#symbol-describe) with `label` = `"value"`; `x` = `6`; inject `logger` from `Logger`, `console` from `Console`.
|
|
24
|
-
- If they fail with [`ValidationError`](interceptors.aug.md#symbol-ValidationError), name the failure `error` and recover:
|
|
25
|
-
- Call `print` with `value` = `"rejected"`.
|
|
26
|
-
- Set `greeter` to call [`Greeter`](app.aug.md#symbol-Greeter) with `name` = `"AugScript"`; inject `_logger` from `Logger`.
|
|
27
|
-
- Call `print` with `value` = call [`Greeter.greet`](app.aug.md#symbol-Greeter.greet) on `greeter`; inject `logger` from `Logger`, `console` from `Console`.
|
|
28
|
-
- Try these operations:
|
|
29
|
-
- Call [`describe`](app.aug.md#symbol-describe) with `x` = `-1`; `label` = `"invalid"`; inject `logger` from `Logger`, `console` from `Console`.
|
|
30
|
-
- If they fail with [`ValidationError`](interceptors.aug.md#symbol-ValidationError), name the failure `error` and recover:
|
|
31
|
-
- Call `print` with `value` = `"rejected"`.
|
|
32
|
-
|
|
33
|
-
## Dependencies used by this file
|
|
34
|
-
|
|
35
|
-
Only referenced types and operations appear here. Each name links to its complete specification.
|
|
36
|
-
|
|
37
|
-
### [`SystemConsole`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-SystemConsole)
|
|
38
|
-
|
|
39
|
-
Class from `august.io`.
|
|
40
|
-
|
|
41
|
-
Used as a type or provider.
|
|
42
|
-
|
|
43
|
-
### [`Greeter`](app.aug.md#symbol-Greeter)
|
|
44
|
-
|
|
45
|
-
Class from `app`.
|
|
46
|
-
|
|
47
|
-
- Construct with `name`: `string` → [`Greeter`](app.aug.md#symbol-Greeter).
|
|
48
|
-
- [`Greeter.greet`](app.aug.md#symbol-Greeter.greet) (no caller inputs) → `string`; inject `logger`: [`Logger`](logging.aug.md#symbol-Logger), `console`: [`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console); uses [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
49
|
-
|
|
50
|
-
### [`describe`](app.aug.md#symbol-describe)
|
|
51
|
-
|
|
52
|
-
Function from `app`.
|
|
53
|
-
|
|
54
|
-
- [`describe`](app.aug.md#symbol-describe) (`x`: `int`, `label`: `string`) → `string`; inject `logger`: [`Logger`](logging.aug.md#symbol-Logger), `console`: [`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console); uses [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write); can fail with `ValidationError`.
|
|
55
|
-
|
|
56
|
-
### [`ValidationError`](interceptors.aug.md#symbol-ValidationError)
|
|
57
|
-
|
|
58
|
-
Class from `interceptors`.
|
|
59
|
-
|
|
60
|
-
Used as a type or provider.
|
|
61
|
-
|
|
62
|
-
### [`ConsoleLogger`](logging.aug.md#symbol-ConsoleLogger)
|
|
63
|
-
|
|
64
|
-
Class from `logging`.
|
|
65
|
-
|
|
66
|
-
Used as a type or provider.
|
|
67
|
-
|
|
68
|
-
## Built-in operations used by this file
|
|
69
|
-
|
|
70
|
-
- `print` (`value`: `any`) → `void`: Composition and test output. Other callables receive Console and declare uses console.write.
|
|
71
|
-
|
|
72
|
-
[Full built-in reference](https://greenpandastudios.github.io/augscript/language-constructs).
|
|
73
|
-
|
|
74
|
-
## Shared language rules
|
|
75
|
-
|
|
76
|
-
See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
|
|
19
|
+
Built-in operations follow the [language reference](https://greenpandastudios.github.io/augscript/language-constructs).
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// Generated by aug spec. This is a copy of the installed dependency source.
|
|
2
|
+
// aug-spec: "contracts.aug.md" explains this file. Read it before changes; refresh with aug spec.
|
|
3
|
+
/** Permission to write to a console, provided by an explicitly selected adapter. */
|
|
4
|
+
capability Console:
|
|
5
|
+
/** Write one line of text. @param value Text to display. */
|
|
6
|
+
write<T>(T value) uses Console.write
|
|
7
|
+
|
|
8
|
+
/** The native standard-output adapter. Construction performs no output. */
|
|
9
|
+
SystemConsole() implements Console:
|
|
10
|
+
write<T>(T value):
|
|
11
|
+
print(value=value)
|
|
12
|
+
|
|
13
|
+
/** Read UTF-8 text through an explicitly selected filesystem adapter. */
|
|
14
|
+
capability FileReader:
|
|
15
|
+
/** Read text. @param path File path. @throws FileError The file could not be read. */
|
|
16
|
+
read(string path) returns string uses FileReader.read unless FileError
|
|
17
|
+
|
|
18
|
+
/** Write UTF-8 text through an explicitly selected filesystem adapter. */
|
|
19
|
+
capability FileWriter:
|
|
20
|
+
/** Write text. @param path File path. @param content Text. @throws FileError Writing failed. */
|
|
21
|
+
write(string path, string content) uses FileWriter.write unless FileError
|
|
22
|
+
|
|
23
|
+
/** Native files. Operations are explicit; construction opens no files. */
|
|
24
|
+
LocalFiles() implements FileReader, FileWriter:
|
|
25
|
+
read(string path) :
|
|
26
|
+
return read_file(path=path)
|
|
27
|
+
write(string path, string content) :
|
|
28
|
+
write_file(path=path, content=content)
|
|
29
|
+
|
|
30
|
+
/** Read command-line input through an explicit dependency. */
|
|
31
|
+
capability Arguments:
|
|
32
|
+
read() returns List<string> uses Arguments.read
|
|
33
|
+
|
|
34
|
+
/** Native command-line arguments. */
|
|
35
|
+
ProcessArguments() implements Arguments:
|
|
36
|
+
read() :
|
|
37
|
+
return arguments()
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
|
+
|
|
3
|
+
# `contracts.aug`
|
|
4
|
+
|
|
5
|
+
<a id="symbol-Console"></a>
|
|
6
|
+
## `Console` · capability interface · [source](contracts.aug#L4)
|
|
7
|
+
|
|
8
|
+
Permission to write to a console, provided by an explicitly selected adapter.
|
|
9
|
+
|
|
10
|
+
<a id="symbol-Console.write"></a>
|
|
11
|
+
### `Console.write` · [source](contracts.aug#L6)
|
|
12
|
+
|
|
13
|
+
Write one line of text. The type parameters are `T`. It takes `value` as `T` (Text to display). It can call [`Console.write`](contracts.aug.md#symbol-Console.write).
|
|
14
|
+
|
|
15
|
+
<a id="symbol-SystemConsole"></a>
|
|
16
|
+
## `SystemConsole` · class · [source](contracts.aug#L9)
|
|
17
|
+
|
|
18
|
+
The native standard-output adapter. Construction performs no output. It implements [`Console`](contracts.aug.md#symbol-Console).
|
|
19
|
+
|
|
20
|
+
<a id="symbol-SystemConsole.write"></a>
|
|
21
|
+
### `SystemConsole.write` · [source](contracts.aug#L10)
|
|
22
|
+
|
|
23
|
+
Write one line of text. The type parameters are `T`. It takes `value` as `T` (Text to display). It prints `value`.
|
|
24
|
+
|
|
25
|
+
<a id="symbol-FileReader"></a>
|
|
26
|
+
## `FileReader` · capability interface · [source](contracts.aug#L14)
|
|
27
|
+
|
|
28
|
+
Read UTF-8 text through an explicitly selected filesystem adapter.
|
|
29
|
+
|
|
30
|
+
<a id="symbol-FileReader.read"></a>
|
|
31
|
+
### `FileReader.read` · [source](contracts.aug#L16)
|
|
32
|
+
|
|
33
|
+
Read text. It takes `path` as a string (File path).
|
|
34
|
+
|
|
35
|
+
It returns `string`. It can call [`FileReader.read`](contracts.aug.md#symbol-FileReader.read). Failures can raise `FileError` (The file could not be read).
|
|
36
|
+
|
|
37
|
+
<a id="symbol-FileWriter"></a>
|
|
38
|
+
## `FileWriter` · capability interface · [source](contracts.aug#L19)
|
|
39
|
+
|
|
40
|
+
Write UTF-8 text through an explicitly selected filesystem adapter.
|
|
41
|
+
|
|
42
|
+
<a id="symbol-FileWriter.write"></a>
|
|
43
|
+
### `FileWriter.write` · [source](contracts.aug#L21)
|
|
44
|
+
|
|
45
|
+
Write text. It takes `path` as a string (File path) and `content` as a string (Text). It can call [`FileWriter.write`](contracts.aug.md#symbol-FileWriter.write). Failures can raise `FileError` (Writing failed).
|
|
46
|
+
|
|
47
|
+
<a id="symbol-LocalFiles"></a>
|
|
48
|
+
## `LocalFiles` · class · [source](contracts.aug#L24)
|
|
49
|
+
|
|
50
|
+
Native files. Operations are explicit; construction opens no files. It implements [`FileReader`](contracts.aug.md#symbol-FileReader) and [`FileWriter`](contracts.aug.md#symbol-FileWriter).
|
|
51
|
+
|
|
52
|
+
<a id="symbol-LocalFiles.read"></a>
|
|
53
|
+
### `LocalFiles.read` · [source](contracts.aug#L25)
|
|
54
|
+
|
|
55
|
+
Read text. It takes `path` as a string (File path). Failures can raise `FileError` (The file could not be read). It returns `read_file` with `path`.
|
|
56
|
+
|
|
57
|
+
<a id="symbol-LocalFiles.write"></a>
|
|
58
|
+
### `LocalFiles.write` · [source](contracts.aug#L27)
|
|
59
|
+
|
|
60
|
+
Write text. It takes `path` as a string (File path) and `content` as a string (Text). Failures can raise `FileError` (Writing failed). It calls `write_file` with `path` and `content`.
|
|
61
|
+
|
|
62
|
+
<a id="symbol-Arguments"></a>
|
|
63
|
+
## `Arguments` · capability interface · [source](contracts.aug#L31)
|
|
64
|
+
|
|
65
|
+
Read command-line input through an explicit dependency.
|
|
66
|
+
|
|
67
|
+
<a id="symbol-Arguments.read"></a>
|
|
68
|
+
### `Arguments.read` · [source](contracts.aug#L32)
|
|
69
|
+
|
|
70
|
+
It returns `List<string>`. It can call [`Arguments.read`](contracts.aug.md#symbol-Arguments.read).
|
|
71
|
+
|
|
72
|
+
<a id="symbol-ProcessArguments"></a>
|
|
73
|
+
## `ProcessArguments` · class · [source](contracts.aug#L35)
|
|
74
|
+
|
|
75
|
+
Native command-line arguments. It implements [`Arguments`](contracts.aug.md#symbol-Arguments).
|
|
76
|
+
|
|
77
|
+
<a id="symbol-ProcessArguments.read"></a>
|
|
78
|
+
### `ProcessArguments.read` · [source](contracts.aug#L36)
|
|
79
|
+
|
|
80
|
+
It returns `arguments`.
|
|
81
|
+
|
|
82
|
+
Built-in operations follow the [language reference](https://greenpandastudios.github.io/augscript/language-constructs).
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"format": 1,
|
|
3
3
|
"files": [
|
|
4
|
-
".aug-spec/august/0.
|
|
5
|
-
".aug-spec/august/0.
|
|
4
|
+
".aug-spec/august/0.20.1/io/contracts.aug",
|
|
5
|
+
".aug-spec/august/0.20.1/io/contracts.aug.md",
|
|
6
6
|
"console.aug.md",
|
|
7
7
|
"greeter.aug.md",
|
|
8
8
|
"logger.aug.md",
|
|
9
9
|
"main.aug.md",
|
|
10
10
|
"math.aug.md"
|
|
11
11
|
],
|
|
12
|
-
"digest": "
|
|
12
|
+
"digest": "7ce49d346be5d92b10f463b9eda7e2ddab769ebd1804d5fe8f5960fd4fbd0860"
|
|
13
13
|
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
// aug-spec: "console.aug.md" explains this file. Read it before changes; refresh with aug spec.
|
|
1
2
|
import Console from august.io
|
|
2
3
|
import Logger from logger
|
|
3
4
|
ConsoleLogger() implements Logger {
|
|
4
|
-
log(resolve Console console, string message)
|
|
5
|
+
log(resolve Console console, string message) {
|
|
5
6
|
console.write(value=message)
|
|
6
7
|
}
|
|
7
8
|
}
|
|
@@ -1,63 +1,17 @@
|
|
|
1
1
|
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
2
|
|
|
3
|
-
# `console.aug`
|
|
4
|
-
|
|
5
|
-
August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
|
|
6
|
-
|
|
7
|
-
## In this file
|
|
8
|
-
|
|
9
|
-
- [`ConsoleLogger`](console.aug.md#symbol-ConsoleLogger) is a class implementing `Logger`.
|
|
3
|
+
# `console.aug`
|
|
10
4
|
|
|
11
5
|
<a id="symbol-ConsoleLogger"></a>
|
|
6
|
+
## `ConsoleLogger` · class · [source](console.aug#L4)
|
|
12
7
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
[source](console.aug#L3)
|
|
16
|
-
|
|
17
|
-
Behavioral class.
|
|
18
|
-
|
|
19
|
-
Satisfies [`Logger`](logger.aug.md#symbol-Logger).
|
|
8
|
+
It implements [`Logger`](logger.aug.md#symbol-Logger).
|
|
20
9
|
|
|
21
10
|
<a id="symbol-ConsoleLogger.log"></a>
|
|
11
|
+
### `ConsoleLogger.log` · [source](console.aug#L5)
|
|
22
12
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
[source](console.aug#L4)
|
|
26
|
-
|
|
27
|
-
**Inputs**
|
|
28
|
-
|
|
29
|
-
- `console` ([`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)) — injected; callers omit it.
|
|
30
|
-
- `message` (`string`) — required labeled input.
|
|
31
|
-
|
|
32
|
-
Returns: no value.
|
|
33
|
-
|
|
34
|
-
Capabilities: [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
35
|
-
|
|
36
|
-
**What it does**
|
|
37
|
-
|
|
38
|
-
- Call [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write) on `console` with `value` = `message`.
|
|
39
|
-
|
|
40
|
-
**Author documentation**
|
|
41
|
-
|
|
42
|
-
**Parameters**
|
|
43
|
-
- `message`: Text to display.
|
|
44
|
-
|
|
45
|
-
## Dependencies used by this file
|
|
46
|
-
|
|
47
|
-
Only referenced types and operations appear here. Each name links to its complete specification.
|
|
48
|
-
|
|
49
|
-
### [`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)
|
|
50
|
-
|
|
51
|
-
Capability interface from `august.io`.
|
|
52
|
-
|
|
53
|
-
- [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write)<`T`> (`value`: `T`) → `void`.
|
|
54
|
-
|
|
55
|
-
### [`Logger`](logger.aug.md#symbol-Logger)
|
|
56
|
-
|
|
57
|
-
Interface from `logger`.
|
|
58
|
-
|
|
59
|
-
Used as a type or provider.
|
|
13
|
+
It takes `message` as a string (Text to display). It gets `console` ([`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console)) from dependency injection. It passes `message` to [`console.write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write).
|
|
60
14
|
|
|
61
|
-
##
|
|
15
|
+
## Dependencies
|
|
62
16
|
|
|
63
|
-
|
|
17
|
+
It uses [`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console) ([`write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write)) from `august.io`. It uses [`Logger`](logger.aug.md#symbol-Logger) from `logger`.
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
// aug-spec: "greeter.aug.md" explains this file. Read it before changes; refresh with aug spec.
|
|
1
2
|
import Console from august.io
|
|
2
3
|
import Logger from logger
|
|
3
4
|
Greeter(resolve Logger logger, int x) implements IGreeter {
|
|
4
|
-
greet(resolve Console console, string name)
|
|
5
|
+
greet(resolve Console console, string name) {
|
|
5
6
|
logger.log(message="Hello, " + name + "!")
|
|
6
7
|
}
|
|
7
8
|
}
|
|
@@ -1,89 +1,25 @@
|
|
|
1
1
|
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
2
|
|
|
3
|
-
# `greeter.aug`
|
|
4
|
-
|
|
5
|
-
August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
|
|
6
|
-
|
|
7
|
-
## In this file
|
|
8
|
-
|
|
9
|
-
- [`Greeter`](greeter.aug.md#symbol-Greeter) is a class implementing `IGreeter`.
|
|
10
|
-
- [`IGreeter`](greeter.aug.md#symbol-IGreeter) is an interface.
|
|
3
|
+
# `greeter.aug`
|
|
11
4
|
|
|
12
5
|
<a id="symbol-Greeter"></a>
|
|
6
|
+
## `Greeter` · class · [source](greeter.aug#L4)
|
|
13
7
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
[source](greeter.aug#L3)
|
|
17
|
-
|
|
18
|
-
Behavioral class.
|
|
19
|
-
|
|
20
|
-
Satisfies [`IGreeter`](greeter.aug.md#symbol-IGreeter).
|
|
21
|
-
|
|
22
|
-
**Inputs**
|
|
23
|
-
|
|
24
|
-
- `logger` ([`Logger`](logger.aug.md#symbol-Logger)) — injected; callers omit it — stored as `logger` and read-only after initialization.
|
|
25
|
-
- `x` (`int`) — required labeled input — stored as `x` and read-only after initialization.
|
|
8
|
+
It implements [`IGreeter`](greeter.aug.md#symbol-IGreeter). It takes `x` as an integer, kept read-only. It gets `logger` ([`Logger`](logger.aug.md#symbol-Logger)), kept read-only from dependency injection.
|
|
26
9
|
|
|
27
10
|
<a id="symbol-Greeter.greet"></a>
|
|
11
|
+
### `Greeter.greet` · [source](greeter.aug#L5)
|
|
28
12
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
[source](greeter.aug#L4)
|
|
32
|
-
|
|
33
|
-
**Inputs**
|
|
34
|
-
|
|
35
|
-
- `console` ([`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)) — injected; callers omit it.
|
|
36
|
-
- `name` (`string`) — required labeled input.
|
|
37
|
-
|
|
38
|
-
Returns: no value.
|
|
39
|
-
|
|
40
|
-
Capabilities: [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
41
|
-
|
|
42
|
-
**What it does**
|
|
43
|
-
|
|
44
|
-
- Call [`Logger.log`](logger.aug.md#symbol-Logger.log) on `logger` with `message` = (text formed by joining `"Hello, "`, `name`, `"!"` in order); inject `console` from `console`.
|
|
13
|
+
It takes `name` as a string. It gets `console` ([`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console)) from dependency injection. It passes the text `Hello, {name}!` to [`logger.log`](logger.aug.md#symbol-Logger.log), using injected `console`.
|
|
45
14
|
|
|
46
15
|
<a id="symbol-IGreeter"></a>
|
|
47
|
-
|
|
48
|
-
## `IGreeter`
|
|
49
|
-
|
|
50
|
-
[source](greeter.aug#L8)
|
|
51
|
-
|
|
52
|
-
Interface.
|
|
16
|
+
## `IGreeter` · interface · [source](greeter.aug#L9)
|
|
53
17
|
|
|
54
18
|
<a id="symbol-IGreeter.greet"></a>
|
|
19
|
+
### `IGreeter.greet` · [source](greeter.aug#L10)
|
|
55
20
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
[source](greeter.aug#L9)
|
|
59
|
-
|
|
60
|
-
**Inputs**
|
|
61
|
-
|
|
62
|
-
- `console` ([`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)) — injected; callers omit it.
|
|
63
|
-
- `name` (`string`) — required labeled input.
|
|
64
|
-
|
|
65
|
-
Returns: no value.
|
|
66
|
-
|
|
67
|
-
Capabilities: [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
68
|
-
|
|
69
|
-
Interface contract. A selected implementation supplies the behavior.
|
|
70
|
-
|
|
71
|
-
## Dependencies used by this file
|
|
72
|
-
|
|
73
|
-
Only referenced types and operations appear here. Each name links to its complete specification.
|
|
74
|
-
|
|
75
|
-
### [`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)
|
|
76
|
-
|
|
77
|
-
Capability interface from `august.io`.
|
|
78
|
-
|
|
79
|
-
- [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write)<`T`> (`value`: `T`) → `void`.
|
|
80
|
-
|
|
81
|
-
### [`Logger`](logger.aug.md#symbol-Logger)
|
|
82
|
-
|
|
83
|
-
Interface from `logger`.
|
|
84
|
-
|
|
85
|
-
- [`Logger.log`](logger.aug.md#symbol-Logger.log) (`message`: `string`) → `void`; inject `console`: [`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console); uses [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
21
|
+
It takes `name` as a string. It gets `console` ([`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console)) from dependency injection. It can call [`Console.write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write).
|
|
86
22
|
|
|
87
|
-
##
|
|
23
|
+
## Dependencies
|
|
88
24
|
|
|
89
|
-
|
|
25
|
+
It uses [`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console) ([`write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write)) from `august.io`. It uses [`Logger`](logger.aug.md#symbol-Logger) ([`log`](logger.aug.md#symbol-Logger.log)) from `logger`.
|
|
@@ -1,57 +1,17 @@
|
|
|
1
1
|
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
2
|
|
|
3
|
-
# `logger.aug`
|
|
4
|
-
|
|
5
|
-
August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
|
|
6
|
-
|
|
7
|
-
## In this file
|
|
8
|
-
|
|
9
|
-
- [`Logger`](logger.aug.md#symbol-Logger) is an interface.
|
|
3
|
+
# `logger.aug`
|
|
10
4
|
|
|
11
5
|
<a id="symbol-Logger"></a>
|
|
12
|
-
|
|
13
|
-
## `Logger`
|
|
14
|
-
|
|
15
|
-
[source](logger.aug#L3)
|
|
16
|
-
|
|
17
|
-
Interface.
|
|
18
|
-
|
|
19
|
-
**Author documentation**
|
|
6
|
+
## `Logger` · interface · [source](logger.aug#L4)
|
|
20
7
|
|
|
21
8
|
Displays application messages.
|
|
22
9
|
|
|
23
10
|
<a id="symbol-Logger.log"></a>
|
|
11
|
+
### `Logger.log` · [source](logger.aug#L6)
|
|
24
12
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
[source](logger.aug#L5)
|
|
28
|
-
|
|
29
|
-
**Inputs**
|
|
30
|
-
|
|
31
|
-
- `console` ([`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)) — injected; callers omit it.
|
|
32
|
-
- `message` (`string`) — required labeled input.
|
|
33
|
-
|
|
34
|
-
Returns: no value.
|
|
35
|
-
|
|
36
|
-
Capabilities: [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
37
|
-
|
|
38
|
-
Interface contract. A selected implementation supplies the behavior.
|
|
39
|
-
|
|
40
|
-
**Author documentation**
|
|
41
|
-
|
|
42
|
-
**Parameters**
|
|
43
|
-
- `message`: Text to display.
|
|
44
|
-
|
|
45
|
-
## Dependencies used by this file
|
|
46
|
-
|
|
47
|
-
Only referenced types and operations appear here. Each name links to its complete specification.
|
|
48
|
-
|
|
49
|
-
### [`Console`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)
|
|
50
|
-
|
|
51
|
-
Capability interface from `august.io`.
|
|
52
|
-
|
|
53
|
-
- [`Console.write`](.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write)<`T`> (`value`: `T`) → `void`.
|
|
13
|
+
It takes `message` as a string (Text to display). It gets `console` ([`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console)) from dependency injection. It can call [`Console.write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write).
|
|
54
14
|
|
|
55
|
-
##
|
|
15
|
+
## Dependencies
|
|
56
16
|
|
|
57
|
-
|
|
17
|
+
It uses [`Console`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console) ([`write`](.aug-spec/august/0.20.1/io/contracts.aug.md#symbol-Console.write)) from `august.io`.
|