dfraw_json_parser 0.17.5

Library which parses Dwarf Fortress raw files into JSON
Documentation
use crate::{creature, creature_caste, RawObject};

pub trait RawObjectToken<T: RawObject> {
    #[allow(dead_code)]
    fn is_within(&self, object: &T) -> bool;
}

impl RawObjectToken<creature::Creature> for creature::Token {
    fn is_within(&self, object: &creature::Creature) -> bool {
        object.get_tags().contains(self)
    }
}

impl RawObjectToken<creature::Creature> for creature_caste::Token {
    fn is_within(&self, object: &creature::Creature) -> bool {
        for caste in object.get_castes() {
            if caste.get_tags().contains(self) {
                return true;
            }
        }
        false
    }
}