Остання активність 1 month ago

nuno ревизій цього gist 1 month ago. До ревизії

1 file changed, 36 insertions

context.sh(файл створено)

@@ -0,0 +1,36 @@
1 + #!/usr/bin/env bash
2 + # core/framework/context.sh
3 +
4 + # ============================================
5 + # Static Context — resolved once at source time
6 + # ============================================
7 +
8 + _CTX_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
9 + _CTX_CORE="${_CTX_ROOT}/core"
10 + _CTX_FRAMEWORK_CORE="${_CTX_ROOT}/core/framework"
11 + _CTX_APP_CORE="${_CTX_ROOT}/core/app"
12 + _CTX_MODULES="${_CTX_ROOT}/modules"
13 + _CTX_COMMANDS="${_CTX_ROOT}/commands"
14 +
15 + echo "ctx::root: $_CTX_ROOT"
16 + echo "ctx::modules: $_CTX_MODULES"
17 +
18 + # ============================================
19 + # Accessors
20 + # ============================================
21 +
22 + function ctx::root() { echo "$_CTX_ROOT"; }
23 + function ctx::core() { echo "$_CTX_CORE"; }
24 + function ctx::framework() { echo "$_CTX_FRAMEWORK_CORE"; }
25 + function ctx::app() { echo "$_CTX_APP_CORE"; }
26 + function ctx::modules() { echo "$_CTX_MODULES"; }
27 + function ctx::commands() { echo "$_CTX_COMMANDS"; }
28 +
29 + # ============================================
30 + # Path Helpers
31 + # ============================================
32 +
33 + function ctx::core::path() { local IFS="/"; echo "$_CTX_CORE/$*"; }
34 + function ctx::framework::path() { local IFS="/"; echo "$_CTX_FRAMEWORK_CORE/$*"; }
35 + function ctx::module::path() { local IFS="/"; echo "$_CTX_MODULES/$*"; }
36 + function ctx::command::path() { local IFS="/"; echo "$_CTX_COMMANDS/$*"; }
Новіше Пізніше