[][src]Crate zamm_yin

Yin is a rudimentary, experimental knowledge base.

Example

use zamm_yin::tao::initialize_kb;
use zamm_yin::tao::archetype::ArchetypeTrait;
use zamm_yin::tao::form::{FormTrait, Form};
use zamm_yin::node_wrappers::CommonNodeTrait;

fn main() {
    // Initialize the knowledge-base
    initialize_kb();

    // Create a new concept
    let mut concept = Form::new();
    assert!(concept.has_ancestor(Form::archetype()));

    // Set a name for the concept
    concept.set_internal_name("Hello, world.".to_string());
    println!("{}", concept.internal_name().unwrap());
}

Modules

graph

Defines the interface and implementations for working with regular directed graphs with labeled edges.

node_wrappers

Wrappers around graph nodes that provide extended functionality at every level.

tao

Object-oriented representations of nodes as first-class individuals, as opposed to merely being one of many components of a knowledge-base.

Macros

define_closure

Unwrap a StrongValue holding a closure, and return the result after running on the input.

initialize_type

Add the given Concept type to the KB.

Traits

Wrapper

Generic wrapper trait.