1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// This file is part of sass-alt. It is subject to the license terms in the COPYRIGHT file found in the top-level directory of this distribution and at https://raw.githubusercontent.com/lemonrock/sass-alt/master/COPYRIGHT. No part of predicator, including this file, may be copied, modified, propagated, or distributed except according to the terms contained in the COPYRIGHT file. // Copyright © 2017 The developers of sass-alt. See the COPYRIGHT file in the top-level directory of this distribution and at https://raw.githubusercontent.com/lemonrock/sass-alt/master/COPYRIGHT. /// A type to model SASS importers. /// Include it by using `use ::sass_alt::Sass_Import_Entry_Ext;`. pub trait SassImporter: Debug { /// The priority of this importer / header. And, weirdly, it really is a double-precision floating point value. fn priority(&self) -> f64 { 0.0f64 } /// The implementation of this SASS importer. /// `path` is the value supplied in the `@import` statement. /// Return Ok(Some(entries)) with a list of import entries (sources of CSS or SASS data). /// Return Ok(Some(None)) to tell libsass to handle the import by itself (as if no custom importer was in use). fn callback(&mut self, path: &CStr, compiler: SassCompiler) -> Result<Option<Vec<SassImportEntry>>, SassImporterError>; }