Linux SRV-16 6.18.44-paas #1 SMP PREEMPT_DYNAMIC Thu Aug 13 10:08:12 UTC 2026 x86_64
/
srv
/
data
/
web
/
vhosts
/
www.shinegis.mu
/
htdocs
/
functions
/
scssphp
/
tests
/
inputs
/
/srv/data/web/vhosts/www.shinegis.mu/htdocs/functions/scssphp/tests/inputs/functions.scss
@function hello($x) { @return $x + 4; } @function add($a, $b) { @return $a + $b; } div { color: hello(10px); sum: add(11, 12); } // make sure values are being reduced before being passed up to previous scope @function one($a, $b) { @return $a $b; } @function two($a, $b) { @return $a#{$a} $b; } @function three($a, $b: default) { @return "hello #{$a} and #{$b}" } @function all($a...) { @return "hello #{$a}" } div { hello: one(10, 55); hello: two(10, 55); hello: three(10, 55); } @function hello_world() { @return 1000; } del { color: hello-world(); } div { $args: foo bar; hello: three($args...); hello: three(bar...); hello: all(Alice, Bob, Tom); } @function stringConcatCompassStyle($start,$last) { // Compass still uses it like this @return #{$start}-#{$last}; } .foo { test2: stringConcatCompassStyle(-moz,art); } @mixin content_test { span { $color: green; @content; } } @function func_test($c) { @return $c + 1; } div { @include content_test { height: func_test(2px); } } @function test ($a, $b: $a/2) { @return $b; } div { width: test(4); } @function test($args...){ @return type-of($args); // should return arglist, but returns list } p{ color: test("a", "s", "d", "f"); } @function test-function() { $str: 'test-function'; @return $str; } @mixin test-mixin { $str: 'test-mixin'; display: $str; $new-bp: test-function(); display: $str; } $str: 'global'; .test{ display: $str; @include test-mixin; display: $str; } .test-inspect { n: inspect(null); b1: inspect(true); b2: inspect(false); n1: inspect(0); s1: inspect(''); s2: inspect('hello'); l1: inspect(1 2); l2: inspect((3 4)); l3: inspect((5,6)); l4: inspect((a: 1, b: 2)); l5: inspect($value: (a: 1, b: 2)); } @function contains($list, $values...) { @each $value in $values { @if type-of(index($list, $value)) != "number" { @return false; } } @return true; } @function mapping($items) { $src: (); $map: ( one: 1px 1px, two: 2px 2px, ); @each $key, $values in $map { @if contains($items, $key) { $value1: nth($values, 1); $value2: nth($values, 2); $src: append($src, $value1 $value2, space); } } @return $src; } @mixin test() { padding: mapping(one two); } div { margin: mapping(one two); @include test(); } $a: rgba(#000, 0.5); $b: rgba(#fff, 0.75); .test { color: mix($a, $b); } .skin { $scopedColor: #ddd; @function bgcolor() { @return $scopedColor; } .var-in-class { background-color: bgcolor(); } }