diff options
| author | Andy Finch <andyfinch7@gmail.com> | 2020-02-01 03:02:23 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-02-01 12:02:23 +0100 |
| commit | 4f8a5c0239cd633ea3fd15a27046da3edee2b2f2 (patch) | |
| tree | 80467fdd1132a44dc7fce01d73261693ee6c7fb5 /core | |
| parent | 2cd3994902fb6a4d4d0603c839a78503d792b96a (diff) | |
feat: support crate imports in deno_typescript (#3814)
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
Diffstat (limited to 'core')
| -rw-r--r-- | core/lib.rs | 2 | ||||
| -rw-r--r-- | core/modules.rs | 20 |
2 files changed, 22 insertions, 0 deletions
diff --git a/core/lib.rs b/core/lib.rs index 91f91a1c9..2fcfa178b 100644 --- a/core/lib.rs +++ b/core/lib.rs @@ -45,3 +45,5 @@ pub fn v8_version() -> &'static str { fn test_v8_version() { assert!(v8_version().len() > 3); } + +crate_modules!(); diff --git a/core/modules.rs b/core/modules.rs index 21c2481dd..c02bd4cab 100644 --- a/core/modules.rs +++ b/core/modules.rs @@ -449,6 +449,26 @@ impl fmt::Display for Deps { } } +#[macro_export] +macro_rules! crate_modules { + () => { + pub const DENO_CRATE_PATH: &'static str = env!("CARGO_MANIFEST_DIR"); + }; +} + +#[macro_export] +macro_rules! include_crate_modules { + ( $( $x:ident ),* ) => { + { + let mut temp: HashMap<String, String> = HashMap::new(); + $( + temp.insert(stringify!($x).to_string(), $x::DENO_CRATE_PATH.to_string()); + )* + temp + } + }; +} + #[cfg(test)] mod tests { use super::*; |
