<===> variable_use/input.scss
@use "midstream";
a {b: midstream.$c}
<===> variable_use/_midstream.scss
@forward "upstream";
<===> variable_use/_upstream.scss
$c: d;
<===> variable_use/output.css
a {
b: d;
}
<===>
================================================================================
<===> variable_assignment/top_level/input.scss
@use "midstream";
midstream.$a: new value;
b {c: midstream.get-a()};
<===> variable_assignment/top_level/_midstream.scss
@forward "upstream";
<===> variable_assignment/top_level/_upstream.scss
$a: old value;
@function get-a() {@return $a}
<===> variable_assignment/top_level/output.css
b {
c: new value;
}
<===>
================================================================================
<===> variable_assignment/nested/input.scss
@use "midstream";
a {
// Namespaced assignments always assign to the other module's variable, even
// if they're nested in a block scope.
midstream.$b: new value;
c: midstream.get-b();
}
<===> variable_assignment/nested/_midstream.scss
@forward "upstream";
<===> variable_assignment/nested/_upstream.scss
$b: old value;
@function get-b() {@return $b}
<===> variable_assignment/nested/output.css
a {
c: new value;
}
<===>
================================================================================
<===> function/input.scss
@use "midstream";
a {b: midstream.c()}
<===> function/_midstream.scss
@forward "upstream";
<===> function/_upstream.scss
@function c() {@return d}
<===> function/output.css
a {
b: d;
}
<===>
================================================================================
<===> mixin/input.scss
@use "midstream";
@include midstream.a;
<===> mixin/_midstream.scss
@forward "upstream";
<===> mixin/_upstream.scss
@mixin a() {b {c: d}}
<===> mixin/output.css
b {
c: d;
}
<===>
================================================================================
<===> no_conflict/variable/input.scss
@use "midstream";
a {b: midstream.$c}
<===> no_conflict/variable/_midstream.scss
@forward "upstream";
@forward "upstream";
<===> no_conflict/variable/_upstream.scss
$c: d;
<===> no_conflict/variable/output.css
a {
b: d;
}
<===>
================================================================================
<===> no_conflict/function/input.scss
@use "midstream";
a {b: midstream.c()}
<===> no_conflict/function/_midstream.scss
@forward "upstream";
@forward "upstream";
<===> no_conflict/function/_upstream.scss
@function c() {@return d}
<===> no_conflict/function/output.css
a {
b: d;
}
<===>
================================================================================
<===> no_conflict/mixin/input.scss
@use "midstream";
a {@include midstream.b}
<===> no_conflict/mixin/_midstream.scss
@forward "upstream";
@forward "upstream";
<===> no_conflict/mixin/_upstream.scss
@mixin b {c: d}
<===> no_conflict/mixin/output.css
a {
c: d;
}