[][src]Trait egg::LanguageChildren

pub trait LanguageChildren {
    fn len(&self) -> usize;
fn can_be_length(n: usize) -> bool;
fn from_vec(v: Vec<Id>) -> Self;
fn as_slice(&self) -> &[Id];
fn as_mut_slice(&mut self) -> &mut [Id]; fn is_empty(&self) -> bool { ... } }

A marker that defines acceptable children types for define_language!.

See define_language! for more details. You should not have to implement this trait.

Required methods

fn len(&self) -> usize

Returns the number of children.

fn can_be_length(n: usize) -> bool

Checks if n is an acceptable number of children for this type.

fn from_vec(v: Vec<Id>) -> Self

Create an instance of this type from a Vec<Id>, with the guarantee that can_be_length is already true on the Vec.

fn as_slice(&self) -> &[Id]

Returns a slice of the children Ids.

fn as_mut_slice(&mut self) -> &mut [Id]

Returns a mutable slice of the children Ids.

Loading content...

Provided methods

fn is_empty(&self) -> bool

Checks if there are no children.

Loading content...

Implementations on Foreign Types

impl LanguageChildren for [Id; 0][src]

impl LanguageChildren for [Id; 1][src]

impl LanguageChildren for [Id; 2][src]

impl LanguageChildren for [Id; 3][src]

impl LanguageChildren for [Id; 4][src]

impl LanguageChildren for [Id; 5][src]

impl LanguageChildren for [Id; 6][src]

impl LanguageChildren for [Id; 7][src]

impl LanguageChildren for [Id; 8][src]

impl LanguageChildren for [Id; 9][src]

impl LanguageChildren for [Id; 10][src]

impl LanguageChildren for [Id; 11][src]

impl LanguageChildren for [Id; 12][src]

impl LanguageChildren for [Id; 13][src]

impl LanguageChildren for [Id; 14][src]

impl LanguageChildren for [Id; 15][src]

impl LanguageChildren for Box<[Id]>[src]

impl LanguageChildren for Vec<Id>[src]

Loading content...

Implementors

impl LanguageChildren for Id[src]

Loading content...