dodrio 0.2.0

A fast, bump-allocated virtual DOM library.
Documentation
cfg_if::cfg_if! {
    if #[cfg(all(feature = "xxx-unstable-internal-use-only", not(target_arch = "wasm32")))] {
        #[derive(Clone, Debug)]
        pub struct ChangeListInterpreter {}
        impl ChangeListInterpreter {
            pub fn new(_container: &crate::Element) -> ChangeListInterpreter {
                ChangeListInterpreter {}
            }
            pub fn unmount(&self) {}
            pub fn add_change_list_range(&self, _start: usize, _len: usize) {}
            pub fn init_events_trampoline(&self, _trampoline: &crate::EventsTrampoline) {}
        }
    } else {
        use wasm_bindgen::prelude::*;

        #[wasm_bindgen(module = "/js/change-list-interpreter.js")]
        extern "C" {
            #[derive(Clone, Debug)]
            pub type ChangeListInterpreter;

            #[wasm_bindgen(constructor)]
            pub fn new(container: &web_sys::Element) -> ChangeListInterpreter;

            #[wasm_bindgen(structural, method)]
            pub fn unmount(this: &ChangeListInterpreter);

            #[wasm_bindgen(structural, method, js_name = addChangeListRange)]
            pub fn add_change_list_range(this: &ChangeListInterpreter, start: usize, len: usize);

            #[wasm_bindgen(structural, method, js_name = applyChanges)]
            pub fn apply_changes(this: &ChangeListInterpreter, memory: JsValue);

            #[wasm_bindgen(structural, method, js_name = initEventsTrampoline)]
            pub fn init_events_trampoline(
                this: &ChangeListInterpreter,
                trampoline: &crate::EventsTrampoline,
            );
        }
    }
}