@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,16 +1,17 @@
|
|
|
1
|
+
// aug-spec: "types.aug.md" explains this file. Read it before changes; refresh with aug spec.
|
|
1
2
|
interface Formatter {
|
|
2
3
|
format<T>(T value) returns string
|
|
3
|
-
title()
|
|
4
|
+
title() {
|
|
4
5
|
return "formatted"
|
|
5
6
|
}
|
|
6
7
|
}
|
|
7
8
|
TextFormatter() implements Formatter {
|
|
8
|
-
format<T>(T value)
|
|
9
|
+
format<T>(T value) {
|
|
9
10
|
return "generic method called"
|
|
10
11
|
}
|
|
11
12
|
}
|
|
12
13
|
Box<T>(T value) implements IBox<T> {
|
|
13
|
-
get()
|
|
14
|
+
get() {
|
|
14
15
|
return value
|
|
15
16
|
}
|
|
16
17
|
}
|
|
@@ -1,132 +1,46 @@
|
|
|
1
1
|
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
2
|
|
|
3
|
-
# `types.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
|
-
- [`Formatter`](types.aug.md#symbol-Formatter) is an interface.
|
|
10
|
-
- [`TextFormatter`](types.aug.md#symbol-TextFormatter) is a class implementing `Formatter`.
|
|
11
|
-
- [`Box`](types.aug.md#symbol-Box) is a class implementing `IBox<T>`.
|
|
12
|
-
- [`IBox`](types.aug.md#symbol-IBox) is an interface.
|
|
3
|
+
# `types.aug`
|
|
13
4
|
|
|
14
5
|
<a id="symbol-Formatter"></a>
|
|
15
|
-
|
|
16
|
-
## `Formatter`
|
|
17
|
-
|
|
18
|
-
[source](types.aug#L1)
|
|
19
|
-
|
|
20
|
-
Interface.
|
|
6
|
+
## `Formatter` · interface · [source](types.aug#L2)
|
|
21
7
|
|
|
22
8
|
<a id="symbol-Formatter.format"></a>
|
|
9
|
+
### `Formatter.format` · [source](types.aug#L3)
|
|
23
10
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
[source](types.aug#L2)
|
|
27
|
-
|
|
28
|
-
Type parameters: `T`.
|
|
29
|
-
|
|
30
|
-
**Inputs**
|
|
31
|
-
|
|
32
|
-
- `value` (`T`) — required labeled input.
|
|
33
|
-
|
|
34
|
-
Returns: `string`.
|
|
35
|
-
|
|
36
|
-
Interface contract. A selected implementation supplies the behavior.
|
|
11
|
+
The type parameters are `T`. It takes `value` as `T`. It returns `string`.
|
|
37
12
|
|
|
38
13
|
<a id="symbol-Formatter.title"></a>
|
|
14
|
+
### `Formatter.title` · [source](types.aug#L4)
|
|
39
15
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
[source](types.aug#L3)
|
|
43
|
-
|
|
44
|
-
Returns: `string`.
|
|
45
|
-
|
|
46
|
-
**What it does**
|
|
47
|
-
|
|
48
|
-
- Return `"formatted"`.
|
|
16
|
+
It returns `"formatted"`.
|
|
49
17
|
|
|
50
18
|
<a id="symbol-TextFormatter"></a>
|
|
19
|
+
## `TextFormatter` · class · [source](types.aug#L8)
|
|
51
20
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
[source](types.aug#L7)
|
|
55
|
-
|
|
56
|
-
Behavioral class.
|
|
57
|
-
|
|
58
|
-
Satisfies [`Formatter`](types.aug.md#symbol-Formatter).
|
|
59
|
-
|
|
60
|
-
**Inherited default behavior**
|
|
61
|
-
|
|
62
|
-
- [`Formatter.title`](types.aug.md#symbol-Formatter.title).
|
|
21
|
+
It implements [`Formatter`](types.aug.md#symbol-Formatter). It inherits the default implementations of [`Formatter.title`](types.aug.md#symbol-Formatter.title).
|
|
63
22
|
|
|
64
23
|
<a id="symbol-TextFormatter.format"></a>
|
|
24
|
+
### `TextFormatter.format` · [source](types.aug#L9)
|
|
65
25
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
[source](types.aug#L8)
|
|
69
|
-
|
|
70
|
-
Type parameters: `T`.
|
|
71
|
-
|
|
72
|
-
**Inputs**
|
|
73
|
-
|
|
74
|
-
- `value` (`T`) — required labeled input.
|
|
75
|
-
|
|
76
|
-
Returns: `string`.
|
|
77
|
-
|
|
78
|
-
**What it does**
|
|
79
|
-
|
|
80
|
-
- Return `"generic method called"`.
|
|
26
|
+
The type parameters are `T`. It takes `value` as `T`. It returns `"generic method called"`.
|
|
81
27
|
|
|
82
28
|
<a id="symbol-Box"></a>
|
|
29
|
+
## `Box` · class · [source](types.aug#L13)
|
|
83
30
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
[source](types.aug#L12)
|
|
87
|
-
|
|
88
|
-
Behavioral class.
|
|
89
|
-
|
|
90
|
-
Type parameters: `T`.
|
|
91
|
-
|
|
92
|
-
Satisfies [`IBox`](types.aug.md#symbol-IBox).
|
|
93
|
-
|
|
94
|
-
**Inputs**
|
|
95
|
-
|
|
96
|
-
- `value` (`T`) — required labeled input — stored as `value` and read-only after initialization.
|
|
31
|
+
It implements [`IBox<T>`](types.aug.md#symbol-IBox). The type parameters are `T`. It takes `value` as `T`, kept read-only.
|
|
97
32
|
|
|
98
33
|
<a id="symbol-Box.get"></a>
|
|
34
|
+
### `Box.get` · [source](types.aug#L14)
|
|
99
35
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
[source](types.aug#L13)
|
|
103
|
-
|
|
104
|
-
Returns: `T`.
|
|
105
|
-
|
|
106
|
-
**What it does**
|
|
107
|
-
|
|
108
|
-
- Return `value`.
|
|
36
|
+
It returns `value`.
|
|
109
37
|
|
|
110
38
|
<a id="symbol-IBox"></a>
|
|
39
|
+
## `IBox` · interface · [source](types.aug#L18)
|
|
111
40
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
[source](types.aug#L17)
|
|
115
|
-
|
|
116
|
-
Interface.
|
|
117
|
-
|
|
118
|
-
Type parameters: `T`.
|
|
41
|
+
The type parameters are `T`.
|
|
119
42
|
|
|
120
43
|
<a id="symbol-IBox.get"></a>
|
|
44
|
+
### `IBox.get` · [source](types.aug#L19)
|
|
121
45
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
[source](types.aug#L18)
|
|
125
|
-
|
|
126
|
-
Returns: `T`.
|
|
127
|
-
|
|
128
|
-
Interface contract. A selected implementation supplies the behavior.
|
|
129
|
-
|
|
130
|
-
## Shared language rules
|
|
131
|
-
|
|
132
|
-
See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
|
|
46
|
+
It returns `T`.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
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.
|
|
2
3
|
/** Permission to write to a console, provided by an explicitly selected adapter. */
|
|
3
4
|
capability Console:
|
|
4
5
|
/** Write one line of text. @param value Text to display. */
|
|
@@ -21,9 +22,9 @@ capability FileWriter:
|
|
|
21
22
|
|
|
22
23
|
/** Native files. Operations are explicit; construction opens no files. */
|
|
23
24
|
LocalFiles() implements FileReader, FileWriter:
|
|
24
|
-
read(string path)
|
|
25
|
+
read(string path) :
|
|
25
26
|
return read_file(path=path)
|
|
26
|
-
write(string path, string content)
|
|
27
|
+
write(string path, string content) :
|
|
27
28
|
write_file(path=path, content=content)
|
|
28
29
|
|
|
29
30
|
/** Read command-line input through an explicit dependency. */
|
|
@@ -32,5 +33,5 @@ capability Arguments:
|
|
|
32
33
|
|
|
33
34
|
/** Native command-line arguments. */
|
|
34
35
|
ProcessArguments() implements Arguments:
|
|
35
|
-
read()
|
|
36
|
+
read() :
|
|
36
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,8 +1,8 @@
|
|
|
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
|
"app/export.aug.md",
|
|
7
7
|
"app/greeter.aug.md",
|
|
8
8
|
"logging/console.aug.md",
|
|
@@ -10,5 +10,5 @@
|
|
|
10
10
|
"logging/logger.aug.md",
|
|
11
11
|
"main.aug.md"
|
|
12
12
|
],
|
|
13
|
-
"digest": "
|
|
13
|
+
"digest": "cb8b965b7843bcc9676a59f508d2dcb8ec9b4ff7f8bce3c0f41b2c8de067de09"
|
|
14
14
|
}
|
|
@@ -1,17 +1,7 @@
|
|
|
1
1
|
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
2
|
|
|
3
|
-
# `export.aug`
|
|
3
|
+
# `export.aug`
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Exports
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
- Export `Greeter` from this folder.
|
|
10
|
-
|
|
11
|
-
## Folder exports
|
|
12
|
-
|
|
13
|
-
- Export the declaration `Greeter` from [`greeter.aug`](greeter.aug.md#symbol-Greeter).
|
|
14
|
-
|
|
15
|
-
## Shared language rules
|
|
16
|
-
|
|
17
|
-
See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
|
|
7
|
+
Export the declaration `Greeter` from [`greeter.aug`](greeter.aug.md#symbol-Greeter).
|
|
@@ -1,3 +1,4 @@
|
|
|
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 logging
|
|
3
4
|
/**
|
|
@@ -9,7 +10,7 @@ Greeter(resolve Logger logger) implements IGreeter {
|
|
|
9
10
|
* Prints a personalized greeting.
|
|
10
11
|
* @param name The user to welcome.
|
|
11
12
|
*/
|
|
12
|
-
greet(resolve Console console, string name)
|
|
13
|
+
greet(resolve Console console, string name) {
|
|
13
14
|
logger.log(message="Hello, " + name + "!")
|
|
14
15
|
}
|
|
15
16
|
}
|
|
@@ -1,109 +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#L8)
|
|
13
7
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
[source](greeter.aug#L7)
|
|
17
|
-
|
|
18
|
-
Behavioral class.
|
|
19
|
-
|
|
20
|
-
Satisfies [`IGreeter`](greeter.aug.md#symbol-IGreeter).
|
|
21
|
-
|
|
22
|
-
**Author documentation**
|
|
23
|
-
|
|
24
|
-
Welcomes a user through the configured logger.
|
|
25
|
-
|
|
26
|
-
**Parameters**
|
|
27
|
-
- `logger`: The application logger, injected when resolved.
|
|
28
|
-
|
|
29
|
-
**Inputs**
|
|
30
|
-
|
|
31
|
-
- `logger` ([`Logger`](../logging/logger.aug.md#symbol-Logger)) — injected; callers omit it — stored as `logger` and read-only after initialization.
|
|
8
|
+
Welcomes a user through the configured logger. It implements [`IGreeter`](greeter.aug.md#symbol-IGreeter). The `logger` dependency is injected as [`Logger`](../logging/logger.aug.md#symbol-Logger) and stored read-only (The application logger, injected when resolved).
|
|
32
9
|
|
|
33
10
|
<a id="symbol-Greeter.greet"></a>
|
|
11
|
+
### `Greeter.greet` · [source](greeter.aug#L13)
|
|
34
12
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
[source](greeter.aug#L12)
|
|
38
|
-
|
|
39
|
-
**Inputs**
|
|
40
|
-
|
|
41
|
-
- `console` ([`Console`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)) — injected; callers omit it.
|
|
42
|
-
- `name` (`string`) — required labeled input.
|
|
43
|
-
|
|
44
|
-
Returns: no value.
|
|
45
|
-
|
|
46
|
-
Capabilities: [`Console.write`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
47
|
-
|
|
48
|
-
**What it does**
|
|
49
|
-
|
|
50
|
-
- Call [`Logger.log`](../logging/logger.aug.md#symbol-Logger.log) on `logger` with `message` = (text formed by joining `"Hello, "`, `name`, `"!"` in order); inject `console` from `console`.
|
|
51
|
-
|
|
52
|
-
**Author documentation**
|
|
53
|
-
|
|
54
|
-
Prints a personalized greeting.
|
|
55
|
-
|
|
56
|
-
**Parameters**
|
|
57
|
-
- `name`: The user to welcome.
|
|
13
|
+
Prints a personalized greeting. It takes `name` as a string (the user to welcome). 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`](../logging/logger.aug.md#symbol-Logger.log), using injected `console`.
|
|
58
14
|
|
|
59
15
|
<a id="symbol-IGreeter"></a>
|
|
60
|
-
|
|
61
|
-
## `IGreeter`
|
|
62
|
-
|
|
63
|
-
[source](greeter.aug#L16)
|
|
64
|
-
|
|
65
|
-
Interface.
|
|
16
|
+
## `IGreeter` · interface · [source](greeter.aug#L17)
|
|
66
17
|
|
|
67
18
|
<a id="symbol-IGreeter.greet"></a>
|
|
19
|
+
### `IGreeter.greet` · [source](greeter.aug#L22)
|
|
68
20
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
[source](greeter.aug#L21)
|
|
72
|
-
|
|
73
|
-
**Inputs**
|
|
74
|
-
|
|
75
|
-
- `console` ([`Console`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)) — injected; callers omit it.
|
|
76
|
-
- `name` (`string`) — required labeled input.
|
|
77
|
-
|
|
78
|
-
Returns: no value.
|
|
79
|
-
|
|
80
|
-
Capabilities: [`Console.write`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write).
|
|
81
|
-
|
|
82
|
-
Interface contract. A selected implementation supplies the behavior.
|
|
83
|
-
|
|
84
|
-
**Author documentation**
|
|
85
|
-
|
|
86
|
-
Prints a personalized greeting.
|
|
87
|
-
|
|
88
|
-
**Parameters**
|
|
89
|
-
- `name`: The user to welcome.
|
|
90
|
-
|
|
91
|
-
## Dependencies used by this file
|
|
92
|
-
|
|
93
|
-
Only referenced types and operations appear here. Each name links to its complete specification.
|
|
94
|
-
|
|
95
|
-
### [`Console`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)
|
|
96
|
-
|
|
97
|
-
Capability interface from `august.io`.
|
|
98
|
-
|
|
99
|
-
- [`Console.write`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write)<`T`> (`value`: `T`) → `void`.
|
|
100
|
-
|
|
101
|
-
### [`Logger`](../logging/logger.aug.md#symbol-Logger)
|
|
102
|
-
|
|
103
|
-
Interface from `logging`.
|
|
104
|
-
|
|
105
|
-
- [`Logger.log`](../logging/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
|
+
Prints a personalized greeting. It takes `name` as a string (the user to welcome). 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).
|
|
106
22
|
|
|
107
|
-
##
|
|
23
|
+
## Dependencies
|
|
108
24
|
|
|
109
|
-
|
|
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`](../logging/logger.aug.md#symbol-Logger) ([`log`](../logging/logger.aug.md#symbol-Logger.log)) from `logging`.
|
|
@@ -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,65 +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
|
-
Writes one message.
|
|
43
|
-
|
|
44
|
-
**Parameters**
|
|
45
|
-
- `message`: Text to write.
|
|
46
|
-
|
|
47
|
-
## Dependencies used by this file
|
|
48
|
-
|
|
49
|
-
Only referenced types and operations appear here. Each name links to its complete specification.
|
|
50
|
-
|
|
51
|
-
### [`Console`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)
|
|
52
|
-
|
|
53
|
-
Capability interface from `august.io`.
|
|
54
|
-
|
|
55
|
-
- [`Console.write`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write)<`T`> (`value`: `T`) → `void`.
|
|
56
|
-
|
|
57
|
-
### [`Logger`](logger.aug.md#symbol-Logger)
|
|
58
|
-
|
|
59
|
-
Interface from `logger`.
|
|
60
|
-
|
|
61
|
-
Used as a type or provider.
|
|
13
|
+
Writes one message. It takes `message` as a string (Text to write). 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).
|
|
62
14
|
|
|
63
|
-
##
|
|
15
|
+
## Dependencies
|
|
64
16
|
|
|
65
|
-
|
|
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,19 +1,7 @@
|
|
|
1
1
|
<!-- Generated by aug spec. Edit the August source, then regenerate. -->
|
|
2
2
|
|
|
3
|
-
# `export.aug`
|
|
3
|
+
# `export.aug`
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Exports
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
- Export `Logger` from this folder.
|
|
10
|
-
- Export `ConsoleLogger` from this folder.
|
|
11
|
-
|
|
12
|
-
## Folder exports
|
|
13
|
-
|
|
14
|
-
- Export the declaration `Logger` from [`logger.aug`](logger.aug.md#symbol-Logger).
|
|
15
|
-
- Export the declaration `ConsoleLogger` from [`console.aug`](console.aug.md#symbol-ConsoleLogger).
|
|
16
|
-
|
|
17
|
-
## Shared language rules
|
|
18
|
-
|
|
19
|
-
See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
|
|
7
|
+
Export the declaration `Logger` from [`logger.aug`](logger.aug.md#symbol-Logger). Export the declaration `ConsoleLogger` from [`console.aug`](console.aug.md#symbol-ConsoleLogger).
|
|
@@ -1,59 +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
|
Writes messages to an application log.
|
|
22
9
|
|
|
23
10
|
<a id="symbol-Logger.log"></a>
|
|
11
|
+
### `Logger.log` · [source](logger.aug#L9)
|
|
24
12
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
[source](logger.aug#L8)
|
|
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
|
-
Writes one message.
|
|
43
|
-
|
|
44
|
-
**Parameters**
|
|
45
|
-
- `message`: Text to write.
|
|
46
|
-
|
|
47
|
-
## Dependencies used by this file
|
|
48
|
-
|
|
49
|
-
Only referenced types and operations appear here. Each name links to its complete specification.
|
|
50
|
-
|
|
51
|
-
### [`Console`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console)
|
|
52
|
-
|
|
53
|
-
Capability interface from `august.io`.
|
|
54
|
-
|
|
55
|
-
- [`Console.write`](../.aug-spec/august/0.19.0/io/contracts.aug.md#symbol-Console.write)<`T`> (`value`: `T`) → `void`.
|
|
13
|
+
Writes one message. It takes `message` as a string (Text to write). 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).
|
|
56
14
|
|
|
57
|
-
##
|
|
15
|
+
## Dependencies
|
|
58
16
|
|
|
59
|
-
|
|
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`.
|
package/examples/hello/main.aug
CHANGED