forked from katzen-cafe/iowo
lang: implement vec, list and matrix
This commit is contained in:
parent
8a541546d9
commit
9af71ed3f4
5 changed files with 78 additions and 89 deletions
|
@ -5,13 +5,12 @@ use crate::parser::{
|
|||
CompletedMarker, Parser,
|
||||
};
|
||||
|
||||
use self::{attr_set::attr_set, matrix::matrix, vec::vec};
|
||||
use self::{attr_set::attr_set, vec::vec_matrix_list};
|
||||
|
||||
mod attr_set;
|
||||
mod matrix;
|
||||
mod vec;
|
||||
|
||||
const COLLECTION_START: TokenSet = enum_set!(MAT_KW | L_BRACK | L_BRACE);
|
||||
const COLLECTION_START: TokenSet = enum_set!(L_BRACK | L_BRACE);
|
||||
|
||||
pub fn collection(p: &mut Parser) -> Option<CompletedMarker> {
|
||||
if !COLLECTION_START.contains(p.current()) {
|
||||
|
@ -19,8 +18,7 @@ pub fn collection(p: &mut Parser) -> Option<CompletedMarker> {
|
|||
}
|
||||
|
||||
Some(match p.current() {
|
||||
MAT_KW => matrix(p),
|
||||
L_BRACK => vec(p),
|
||||
L_BRACK => vec_matrix_list(p),
|
||||
L_BRACE => attr_set(p),
|
||||
_ => unreachable!(),
|
||||
})
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue