Skip to content

Commit e58061e

Browse files
committed
Allow using generated assets
1 parent 4b1b60a commit e58061e

5 files changed

Lines changed: 339 additions & 86 deletions

File tree

packages/manganis/manganis-macro/assets/manganis_macro.dat renamed to packages/manganis/manganis-macro/out/generated-asset.txt

File renamed without changes.

packages/manganis/manganis-macro/src/asset.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
use crate::{AssetParseError, linker::generate_link_section, resolve_path};
1+
use crate::{AssetParseError, PathResolver, linker::generate_link_section};
22
use macro_string::MacroString;
33
use proc_macro2::TokenStream as TokenStream2;
44
use quote::{ToTokens, quote};
@@ -45,7 +45,7 @@ impl Parse for AssetParser {
4545
fn parse(input: ParseStream) -> syn::Result<Self> {
4646
// And then parse the options
4747
let (MacroString(src), path_expr) = input.call(crate::parse_with_tokens)?;
48-
let asset = resolve_path(&src, path_expr.span());
48+
let asset = PathResolver::new(&src, &path_expr.span()).resolve();
4949
let _comma = input.parse::<Token![,]>();
5050
let options = input.parse()?;
5151

@@ -133,7 +133,7 @@ impl AssetParser {
133133
let asset_tokens = self.expand_asset_tokens(asset);
134134
quote! { ::core::option::Option::Some(#asset_tokens) }
135135
}
136-
Err(AssetParseError::AssetDoesntExist { .. }) => {
136+
Err(AssetParseError::DoesNotExist { .. }) => {
137137
quote! { ::core::option::Option::<manganis::Asset>::None }
138138
}
139139
Err(err) => self.error_tokens(err),

packages/manganis/manganis-macro/src/asset.txt

Whitespace-only changes.

packages/manganis/manganis-macro/src/css_module.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
use crate::{asset::AssetParser, resolve_path};
1+
use crate::{PathResolver, asset::AssetParser};
22
use macro_string::MacroString;
33
use manganis_core::{create_module_hash, get_class_mappings};
44
use proc_macro2::{Span, TokenStream};
@@ -18,7 +18,7 @@ impl Parse for CssModuleAttribute {
1818
fn parse(input: ParseStream) -> syn::Result<Self> {
1919
// Asset path "/path.css"
2020
let (MacroString(src), path_expr) = input.call(crate::parse_with_tokens)?;
21-
let asset = resolve_path(&src, path_expr.span());
21+
let asset = PathResolver::new(&src, &path_expr.span()).resolve();
2222

2323
let _comma = input.parse::<Comma>();
2424

0 commit comments

Comments
 (0)