diff --git a/rhai_system/examples/base_path_imports/Cargo.lock b/rhai_system/examples/base_path_imports/Cargo.lock deleted file mode 100644 index 12aeffc..0000000 --- a/rhai_system/examples/base_path_imports/Cargo.lock +++ /dev/null @@ -1,950 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 4 - -[[package]] -name = "ahash" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" -dependencies = [ - "cfg-if", - "const-random", - "getrandom 0.2.15", - "once_cell", - "version_check", - "zerocopy", -] - -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - -[[package]] -name = "android_system_properties" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", -] - -[[package]] -name = "autocfg" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" - -[[package]] -name = "base_path_imports" -version = "0.1.0" -dependencies = [ - "chrono", - "rhai", - "rhai_factory", -] - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" - -[[package]] -name = "bumpalo" -version = "3.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" - -[[package]] -name = "cc" -version = "1.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525046617d8376e3db1deffb079e91cef90a89fc3ca5c185bbf8c9ecdd15cd5c" -dependencies = [ - "shlex", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "chrono" -version = "0.4.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a7964611d71df112cb1730f2ee67324fcf4d0fc6606acbbe9bfe06df124637c" -dependencies = [ - "android-tzdata", - "iana-time-zone", - "js-sys", - "num-traits", - "wasm-bindgen", - "windows-link", -] - -[[package]] -name = "const-random" -version = "0.1.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359" -dependencies = [ - "const-random-macro", -] - -[[package]] -name = "const-random-macro" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e" -dependencies = [ - "getrandom 0.2.15", - "once_cell", - "tiny-keccak", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" - -[[package]] -name = "crossbeam-channel" -version = "0.5.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" - -[[package]] -name = "crunchy" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" - -[[package]] -name = "filetime" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" -dependencies = [ - "cfg-if", - "libc", - "libredox", - "windows-sys 0.59.0", -] - -[[package]] -name = "fsevent-sys" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" -dependencies = [ - "libc", -] - -[[package]] -name = "getrandom" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.11.0+wasi-snapshot-preview1", -] - -[[package]] -name = "getrandom" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" -dependencies = [ - "cfg-if", - "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", -] - -[[package]] -name = "iana-time-zone" -version = "0.1.63" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" -dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "log", - "wasm-bindgen", - "windows-core", -] - -[[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" -dependencies = [ - "cc", -] - -[[package]] -name = "inotify" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" -dependencies = [ - "bitflags 1.3.2", - "inotify-sys", - "libc", -] - -[[package]] -name = "inotify-sys" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" -dependencies = [ - "libc", -] - -[[package]] -name = "instant" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "js-sys" -version = "0.3.77" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" -dependencies = [ - "once_cell", - "wasm-bindgen", -] - -[[package]] -name = "kqueue" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" -dependencies = [ - "kqueue-sys", - "libc", -] - -[[package]] -name = "kqueue-sys" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" -dependencies = [ - "bitflags 1.3.2", - "libc", -] - -[[package]] -name = "libc" -version = "0.2.171" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6" - -[[package]] -name = "libredox" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.9.0", - "libc", - "redox_syscall", -] - -[[package]] -name = "log" -version = "0.4.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" - -[[package]] -name = "mio" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" -dependencies = [ - "libc", - "log", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.48.0", -] - -[[package]] -name = "no-std-compat" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c" -dependencies = [ - "spin", -] - -[[package]] -name = "notify" -version = "5.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "729f63e1ca555a43fe3efa4f3efdf4801c479da85b432242a7b726f353c88486" -dependencies = [ - "bitflags 1.3.2", - "crossbeam-channel", - "filetime", - "fsevent-sys", - "inotify", - "kqueue", - "libc", - "mio", - "walkdir", - "windows-sys 0.45.0", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", -] - -[[package]] -name = "once_cell" -version = "1.21.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" -dependencies = [ - "portable-atomic", -] - -[[package]] -name = "portable-atomic" -version = "1.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" - -[[package]] -name = "proc-macro2" -version = "1.0.94" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "quote" -version = "1.0.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "r-efi" -version = "5.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" - -[[package]] -name = "redox_syscall" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2f103c6d277498fbceb16e84d317e2a400f160f46904d5f5410848c829511a3" -dependencies = [ - "bitflags 2.9.0", -] - -[[package]] -name = "rhai" -version = "1.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce4d759a4729a655ddfdbb3ff6e77fb9eadd902dae12319455557796e435d2a6" -dependencies = [ - "ahash", - "bitflags 2.9.0", - "instant", - "no-std-compat", - "num-traits", - "once_cell", - "rhai_codegen", - "smallvec", - "smartstring", - "thin-vec", -] - -[[package]] -name = "rhai_codegen" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5a11a05ee1ce44058fa3d5961d05194fdbe3ad6b40f904af764d81b86450e6b" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "rhai_factory" -version = "0.1.0" -dependencies = [ - "log", - "notify", - "rhai", - "thiserror", - "uuid", -] - -[[package]] -name = "rustversion" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" - -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "serde" -version = "1.0.219" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.219" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "shlex" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" - -[[package]] -name = "smallvec" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" - -[[package]] -name = "smartstring" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29" -dependencies = [ - "autocfg", - "static_assertions", - "version_check", -] - -[[package]] -name = "spin" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" - -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - -[[package]] -name = "syn" -version = "2.0.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "thin-vec" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "144f754d318415ac792f9d69fc87abbbfc043ce2ef041c60f16ad828f638717d" - -[[package]] -name = "thiserror" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "tiny-keccak" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] - -[[package]] -name = "unicode-ident" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" - -[[package]] -name = "uuid" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "458f7a779bf54acc9f347480ac654f68407d3aab21269a6e3c9f922acd9e2da9" -dependencies = [ - "getrandom 0.3.2", - "serde", -] - -[[package]] -name = "version_check" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" - -[[package]] -name = "walkdir" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" -dependencies = [ - "same-file", - "winapi-util", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "wasi" -version = "0.14.2+wasi-0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" -dependencies = [ - "wit-bindgen-rt", -] - -[[package]] -name = "wasm-bindgen" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" -dependencies = [ - "cfg-if", - "once_cell", - "rustversion", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" -dependencies = [ - "bumpalo", - "log", - "proc-macro2", - "quote", - "syn", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" -dependencies = [ - "proc-macro2", - "quote", - "syn", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "winapi-util" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "windows-core" -version = "0.61.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4763c1de310c86d75a878046489e2e5ba02c649d185f21c67d4cf8a56d098980" -dependencies = [ - "windows-implement", - "windows-interface", - "windows-link", - "windows-result", - "windows-strings", -] - -[[package]] -name = "windows-implement" -version = "0.60.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "windows-interface" -version = "0.59.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "windows-link" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" - -[[package]] -name = "windows-result" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" -dependencies = [ - "windows-link", -] - -[[package]] -name = "windows-strings" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2ba9642430ee452d5a7aa78d72907ebe8cfda358e8cb7918a2050581322f97" -dependencies = [ - "windows-link", -] - -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" - -[[package]] -name = "wit-bindgen-rt" -version = "0.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" -dependencies = [ - "bitflags 2.9.0", -] - -[[package]] -name = "zerocopy" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" -dependencies = [ - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] diff --git a/rhai_system/examples/base_path_imports/Cargo.toml b/rhai_system/examples/base_path_imports/Cargo.toml deleted file mode 100644 index c4f43c8..0000000 --- a/rhai_system/examples/base_path_imports/Cargo.toml +++ /dev/null @@ -1,9 +0,0 @@ -[package] -name = "base_path_imports" -version = "0.1.0" -edition = "2021" - -[dependencies] -rhai_factory = { path = "../.." } -rhai = "1.14.0" -chrono = "0.4.24" diff --git a/rhai_system/examples/base_path_imports/README.md b/rhai_system/examples/base_path_imports/README.md deleted file mode 100644 index 327fdbf..0000000 --- a/rhai_system/examples/base_path_imports/README.md +++ /dev/null @@ -1,89 +0,0 @@ -# Base Path Module Resolver Example - -This example demonstrates the use of the `BasePathModuleResolver` for simplifying Rhai script module imports. - -## Overview - -The `BasePathModuleResolver` provides a more predictable and consistent approach to module resolution by: - -1. Using a single base path for resolving all module imports -2. Eliminating the complexity of resolving imports relative to the importing file -3. Requiring all import paths to be specified relative to the base path - -## Directory Structure - -The example follows a hierarchical directory structure: - -``` -base_path_imports/ -├── components/ -│ ├── calendar/ -│ │ └── controller/ -│ │ └── mock/ -│ │ └── calendar_model.rhai -│ ├── common/ -│ │ └── utils/ -│ │ ├── date_utils.rhai -│ │ └── string_utils.rhai -│ └── website/ -│ └── controller/ -│ └── mock/ -│ └── website_model.rhai -├── main.rhai -└── src/ - └── main.rs -``` - -## Key Components - -### 1. BasePathModuleResolver - -Located in `rhai_factory/src/relative_resolver.rs`, this resolver simplifies module imports by: - -- Taking a base path during initialization -- Resolving all module imports relative to this base path -- Providing clear logging of the resolution process - -### 2. Utility Modules - -Common utility functions are organized in the `components/common/utils/` directory: - -- `string_utils.rhai`: Basic string manipulation functions -- `date_utils.rhai`: Date formatting and validation functions - -### 3. Component-Specific Modules - -Component-specific functionality is organized in dedicated directories: - -- `components/calendar/controller/mock/calendar_model.rhai`: Calendar event creation and validation -- `components/website/controller/mock/website_model.rhai`: Website page creation and validation - -### 4. Main Script - -The `main.rhai` script demonstrates importing and using modules from different components. - -## Running the Example - -To run the example: - -```bash -cd rhai_factory/examples/base_path_imports -cargo run -``` - -## Key Benefits - -1. **Simplified Imports**: All imports are relative to a single base path -2. **Predictable Resolution**: No need to calculate relative paths between files -3. **Cleaner Code**: No need for complex "../../../" style paths -4. **Better Organization**: Encourages a modular, component-based structure -5. **Improved Debugging**: Clear logging of the module resolution process - -## Implementation Details - -The example demonstrates: - -1. Setting up the `BasePathModuleResolver` with a base path -2. Importing modules using paths relative to the base path -3. Using utility functions from common modules -4. Creating component-specific functionality that leverages common utilities diff --git a/rhai_system/examples/base_path_imports/components/calendar/controller/mock/calendar_model.rhai b/rhai_system/examples/base_path_imports/components/calendar/controller/mock/calendar_model.rhai deleted file mode 100644 index 5a42ae7..0000000 --- a/rhai_system/examples/base_path_imports/components/calendar/controller/mock/calendar_model.rhai +++ /dev/null @@ -1,33 +0,0 @@ -// Calendar model functions - -// Import common utility functions -import "components/common/utils/date_utils" as date_utils; -import "components/common/utils/string_utils" as string_utils; - -// Creates a new calendar event -fn create_event(title, description, year, month, day) { - let formatted_title = string_utils::to_upper(title); - let formatted_date = date_utils::format_date(year, month, day); - - return #{ - title: formatted_title, - description: description, - date: formatted_date, - is_valid: is_valid_event_date(year, month, day) - }; -} - -// Checks if an event date is valid -fn is_valid_event_date(year, month, day) { - // Convert all parameters to integers to ensure consistent comparison - let y = year.to_int(); - let m = month.to_int(); - let d = day.to_int(); - - if m < 1 || m > 12 { - return false; - } - - let max_days = date_utils::days_in_month(y, m); - return d >= 1 && d <= max_days; -} diff --git a/rhai_system/examples/base_path_imports/components/common/utils/date_utils.rhai b/rhai_system/examples/base_path_imports/components/common/utils/date_utils.rhai deleted file mode 100644 index ea1cef6..0000000 --- a/rhai_system/examples/base_path_imports/components/common/utils/date_utils.rhai +++ /dev/null @@ -1,31 +0,0 @@ -// Simple date utility functions - -// Format a date as YYYY-MM-DD -fn format_date(year, month, day) { - let month_str = month; - let day_str = day; - - return year + "-" + month_str + "-" + day_str; -} - -// Check if a year is a leap year -fn is_leap_year(year) { - return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0); -} - -// Get the number of days in a month -fn days_in_month(year, month) { - if month == 2 { - if is_leap_year(year) { - return 29; - } else { - return 28; - } - } - - if month == 4 || month == 6 || month == 9 || month == 11 { - return 30; - } - - return 31; -} diff --git a/rhai_system/examples/base_path_imports/components/common/utils/string_utils.rhai b/rhai_system/examples/base_path_imports/components/common/utils/string_utils.rhai deleted file mode 100644 index db60c34..0000000 --- a/rhai_system/examples/base_path_imports/components/common/utils/string_utils.rhai +++ /dev/null @@ -1,16 +0,0 @@ -// Simple string utility functions - -// Make a string uppercase -fn to_upper(s) { - return s.to_upper(); -} - -// Make a string lowercase -fn to_lower(s) { - return s.to_lower(); -} - -// Get string length -fn length(s) { - return s.len(); -} diff --git a/rhai_system/examples/base_path_imports/components/website/controller/mock/website_model.rhai b/rhai_system/examples/base_path_imports/components/website/controller/mock/website_model.rhai deleted file mode 100644 index d7cf606..0000000 --- a/rhai_system/examples/base_path_imports/components/website/controller/mock/website_model.rhai +++ /dev/null @@ -1,28 +0,0 @@ -// Website model functions - -// Import common utility functions -import "components/common/utils/string_utils" as string_utils; - -// Creates a new website page -fn create_page(title, content, slug) { - let formatted_title = string_utils::to_upper(title); - let slug_length = string_utils::length(slug); - - return #{ - title: formatted_title, - content: content, - slug: slug, - slug_length: slug_length, - is_valid: is_valid_slug(slug) - }; -} - -// Validates a page slug -fn is_valid_slug(slug) { - // Simple validation - check if it's not empty and has reasonable length - if slug.len() == 0 || slug.len() > 100 { - return false; - } - - return true; -} diff --git a/rhai_system/examples/base_path_imports/main.rhai b/rhai_system/examples/base_path_imports/main.rhai deleted file mode 100644 index 89769ba..0000000 --- a/rhai_system/examples/base_path_imports/main.rhai +++ /dev/null @@ -1,36 +0,0 @@ -// Main script that demonstrates importing modules from different components - -// Import the calendar and website models -import "components/calendar/controller/mock/calendar_model" as calendar; -import "components/website/controller/mock/website_model" as website; - -// Create a calendar event -fn create_calendar_event(title, description, year, month, day) { - if !calendar::is_valid_event_date(year, month, day) { - return #{ error: "Invalid date" }; - } - - return calendar::create_event(title, description, year, month, day); -} - -// Create a website page -fn create_website_page(title, content, slug) { - if !website::is_valid_slug(slug) { - return #{ error: "Invalid slug" }; - } - - return website::create_page(title, content, slug); -} - -// Example function that combines calendar and website functionality -fn demo() { - // Create a calendar event - let event = create_calendar_event("Team Meeting", "Weekly sync", 2025, 4, 15); - print("Calendar event: " + event); - - // Create a website page - let page = create_website_page("About Us", "Company information", "about-us"); - print("Website page: " + page); - - return "Demo completed successfully"; -} diff --git a/rhai_system/examples/base_path_imports/src/main.rs b/rhai_system/examples/base_path_imports/src/main.rs deleted file mode 100644 index 44071cb..0000000 --- a/rhai_system/examples/base_path_imports/src/main.rs +++ /dev/null @@ -1,69 +0,0 @@ -use rhai_factory::{RhaiFactory, BasePathModuleResolver}; -use std::path::Path; - -fn main() -> Result<(), Box> { - // Get the base path for our scripts - let base_path = Path::new(env!("CARGO_MANIFEST_DIR")); - - println!("Base path: {}", base_path.display()); - println!("This example demonstrates the BasePathModuleResolver which resolves all imports relative to a base path"); - - // Create a new RhaiFactory - let factory = RhaiFactory::new(); - - // Create an engine with the base path for module resolution - let mut engine = factory.create_engine(); - - // Set up the BasePathModuleResolver - this is the key component that simplifies module imports - // All module imports will be resolved relative to this base path - let resolver = BasePathModuleResolver::new_with_path(&base_path); - engine.set_module_resolver(resolver); - - // Register basic functions needed by our scripts - engine.register_fn("now", || chrono::Utc::now().to_rfc3339()); - - // Path to our main script - let main_script_path = base_path.join("main.rhai"); - println!("\nEvaluating script: {}", main_script_path.display()); - - // Compile the main script to an AST - let ast = engine.compile_file(main_script_path)?; - - // Create a scope for evaluation - let mut scope = rhai::Scope::new(); - - // Example 1: Call the demo function which demonstrates both calendar and website functionality - println!("\nExample 1: Running demo function"); - let result: String = engine.call_fn( - &mut scope, - &ast, - "demo", - () - )?; - println!("Demo result: {}", result); - - // Example 2: Call the calendar event creation function - println!("\nExample 2: Creating a calendar event"); - let result: rhai::Map = engine.call_fn( - &mut scope, - &ast, - "create_calendar_event", - ("Conference", "Annual tech conference", 2025, 6, 15) - )?; - println!("Calendar event: {:#?}", result); - - // Example 3: Call the website page creation function - println!("\nExample 3: Creating a website page"); - let result: rhai::Map = engine.call_fn( - &mut scope, - &ast, - "create_website_page", - ("Contact", "Our contact information", "contact-us") - )?; - println!("Website page: {:#?}", result); - - println!("\nThe BasePathModuleResolver successfully resolved all module imports relative to the base path."); - println!("This approach simplifies module imports and makes the resolution process more predictable."); - - Ok(()) -} diff --git a/rhai_system/examples/relative_imports/Cargo.toml b/rhai_system/examples/relative_imports/Cargo.toml deleted file mode 100644 index ed89f9c..0000000 --- a/rhai_system/examples/relative_imports/Cargo.toml +++ /dev/null @@ -1,10 +0,0 @@ -[package] -name = "relative_imports_example" -version = "0.1.0" -edition = "2021" - -[dependencies] -rhai_factory = { path = "../.." } -rhai = { version = "1.21.0", features = ["serde"] } -log = "0.4" -env_logger = "0.10" diff --git a/rhai_system/examples/relative_imports/scripts/components/calendar/controller/calendar.rhai b/rhai_system/examples/relative_imports/scripts/components/calendar/controller/calendar.rhai deleted file mode 100644 index 90593fd..0000000 --- a/rhai_system/examples/relative_imports/scripts/components/calendar/controller/calendar.rhai +++ /dev/null @@ -1,67 +0,0 @@ -// Calendar controller module -// This demonstrates importing from a different directory level - -// Import the common utils using a relative path -import "../../../utils/common" as common; - -/// Returns data for a single calendar event -fn get_event_data() { - let event = #{ - id: 1, - title: "Team Meeting", - date: "2025-04-15", - time: "10:00 AM", - location: "Conference Room A", - description: "Weekly team sync meeting" - }; - - // Use the common utils to check if the date is in the future - if common::is_future_date(event.date) { - event.status = "Upcoming"; - } else { - event.status = "Past"; - } - - return event; -} - -/// Returns a list of all calendar events -fn get_all_events() { - let events = [ - #{ - id: 1, - title: "Team Meeting", - date: "2025-04-15", - time: "10:00 AM", - location: "Conference Room A", - description: "Weekly team sync meeting" - }, - #{ - id: 2, - title: "Project Review", - date: "2025-04-17", - time: "2:00 PM", - location: "Meeting Room B", - description: "Review project progress and next steps" - }, - #{ - id: 3, - title: "Client Presentation", - date: "2025-04-20", - time: "11:30 AM", - location: "Main Auditorium", - description: "Present new features to the client" - } - ]; - - // Update the status of each event using the common utils - for event in events { - if common::is_future_date(event.date) { - event.status = "Upcoming"; - } else { - event.status = "Past"; - } - } - - return events; -} diff --git a/rhai_system/examples/relative_imports/scripts/main.rhai b/rhai_system/examples/relative_imports/scripts/main.rhai deleted file mode 100644 index d554131..0000000 --- a/rhai_system/examples/relative_imports/scripts/main.rhai +++ /dev/null @@ -1,23 +0,0 @@ -// Import modules using relative paths -import "utils/common" as common; -import "components/calendar/controller/calendar" as calendar; - -// Main function that demonstrates the relative imports -fn main() { - // Print a message using the common utils - let greeting = common::get_greeting("User"); - print(greeting); - - // Get calendar events using the calendar controller - let events = calendar::get_all_events(); - - // Print the events using the common utils format function - print("\nCalendar Events:"); - for event in events { - let formatted = common::format_event(event); - print(formatted); - } - - // Return a success message - "All imports worked correctly!" -} diff --git a/rhai_system/examples/relative_imports/scripts/utils/common.rhai b/rhai_system/examples/relative_imports/scripts/utils/common.rhai deleted file mode 100644 index db84f00..0000000 --- a/rhai_system/examples/relative_imports/scripts/utils/common.rhai +++ /dev/null @@ -1,18 +0,0 @@ -// Common utility functions used across the application - -/// Returns a greeting message for the given name -fn get_greeting(name) { - return `Hello, ${name}! Welcome to the Rhai relative imports example.`; -} - -/// Formats an event object into a readable string -fn format_event(event) { - return `- ${event.title} on ${event.date} at ${event.time} (${event.location})`; -} - -/// Utility function to check if a date is in the future -fn is_future_date(date_str) { - // Simple implementation for the example - // In a real application, you would parse the date and compare with current date - return true; -} diff --git a/rhai_system/examples/relative_imports/src/main.rs b/rhai_system/examples/relative_imports/src/main.rs deleted file mode 100644 index 359c8e7..0000000 --- a/rhai_system/examples/relative_imports/src/main.rs +++ /dev/null @@ -1,58 +0,0 @@ -use std::path::Path; -use rhai_factory::{RhaiFactory, RelativeFileModuleResolver}; - -fn main() -> Result<(), Box> { - // Initialize the logger with debug level - std::env::set_var("RUST_LOG", "debug"); - env_logger::init(); - - println!("Starting Relative Imports Example..."); - - // Get the paths to our script files - let scripts_dir = Path::new(env!("CARGO_MANIFEST_DIR")).join("scripts"); - let main_script_path = scripts_dir.join("main.rhai"); - - println!("Scripts directory: {:?}", scripts_dir); - println!("Main script path: {:?}", main_script_path); - - // Create a RhaiFactory instance - let factory = RhaiFactory::new(); - - // Method 1: Using the RhaiFactory which now uses RelativeFileModuleResolver by default - println!("\nMethod 1: Using RhaiFactory with RelativeFileModuleResolver (default)"); - let ast = factory.compile_modules(&[&main_script_path], Some(&scripts_dir))?; - let engine = factory.create_engine(); - - // Evaluate the main script - let result: String = engine.eval_ast(&ast)?; - println!("Result: {}", result); - - // Method 2: Creating an engine manually with RelativeFileModuleResolver - println!("\nMethod 2: Creating an engine manually with RelativeFileModuleResolver"); - let mut manual_engine = rhai::Engine::new(); - manual_engine.set_module_resolver(RelativeFileModuleResolver::new_with_path(&scripts_dir)); - - // Evaluate the main script directly - let result: String = manual_engine.eval_file(main_script_path)?; - println!("Result: {}", result); - - // Demonstrate hot reloading capability - println!("\nDemonstrating hot reload capability:"); - println!("1. The engine will watch for changes to the script files"); - println!("2. If you modify any of the script files, the changes will be detected"); - println!("3. The engine will automatically reload the modified scripts"); - - // Create a hot reloadable engine - let (hot_engine, hot_ast, hot_reload_handle) = - factory.create_hot_reloadable_rhai_engine(&[&main_script_path], Some(&scripts_dir))?; - - // Evaluate the main script with hot reloading - let result: String = hot_engine.eval_ast(&hot_ast.read().unwrap())?; - println!("Hot reload result: {}", result); - - println!("\nExample completed successfully!"); - println!("This example demonstrates how the RelativeFileModuleResolver makes imports work"); - println!("relative to the file importing them, rather than just relative to a fixed base path."); - - Ok(()) -}