oxc/crates
rzvxa f5eeebdcec fix(ast_macros): raise compile error on invalid generate_derive input. (#4766)
It checks 2 things. 1) The input is a supported derive 2) The given identifier is the same as the fully qualified target trait.

The latter makes sure that the trait for derive is included in the scope.

Part of #4704

Here's an expanded example of how we assert traits:

```rust
const _:() = {
    {
        trait AssertionTrait: ::oxc_allocator::CloneIn<'static> {}
        impl<T: CloneIn<'static>> AssertionTrait for T {}
    };
};
```

It makes sure `CloneIn` is the same as `::oxc_allocator::CloneIn` and more importantly requires the user to include the trait if they wish to use it with `generate_derive`.

It also provides LSP jump to definition.
2024-08-08 19:06:43 +00:00
..
oxc Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_allocator Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_ast fix(ast_macros): raise compile error on invalid generate_derive input. (#4766) 2024-08-08 19:06:43 +00:00
oxc_ast_macros fix(ast_macros): raise compile error on invalid generate_derive input. (#4766) 2024-08-08 19:06:43 +00:00
oxc_cfg Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_codegen Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_diagnostics Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_index Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_isolated_declarations Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_js_regex
oxc_language_server
oxc_linter refactor(linter): replace Windows-style line breaks with Unix-style in test fixture (#4768) 2024-08-08 17:33:04 +00:00
oxc_macros refactor(ast_codegen): replace Windows-style line breaks with Unix-style (#4769) 2024-08-08 17:28:58 +00:00
oxc_mangler Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_minifier Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_module_lexer Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_parser Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_prettier
oxc_semantic Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_sourcemap Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_span Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_syntax Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_transformer Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_traverse Release crates v0.24.0 (#4749) 2024-08-08 14:00:57 +08:00
oxc_wasm refactor(minifier): ast passes infrastructure (#4625) 2024-08-04 11:58:39 +00:00