grass/src/atrule/mixin.rs

33 lines
652 B
Rust
Raw Normal View History

use std::vec::IntoIter;
use peekmore::{PeekMore, PeekMoreIterator};
2020-06-16 19:38:30 -04:00
use crate::args::FuncArgs;
use crate::scope::Scope;
2020-06-16 19:38:30 -04:00
use crate::Token;
2020-01-12 20:15:40 -05:00
#[derive(Debug, Clone)]
pub(crate) struct Mixin {
2020-06-16 19:38:30 -04:00
pub scope: Scope,
pub args: FuncArgs,
pub body: PeekMoreIterator<IntoIter<Token>>,
pub accepts_content_block: bool,
2020-01-12 20:15:40 -05:00
}
impl Mixin {
2020-06-16 19:38:30 -04:00
pub fn new(
scope: Scope,
args: FuncArgs,
body: Vec<Token>,
accepts_content_block: bool,
) -> Self {
let body = body.into_iter().peekmore();
2020-06-16 19:38:30 -04:00
Mixin {
scope,
args,
body,
accepts_content_block,
2020-01-12 20:15:40 -05:00
}
}
}