copper-rs 1.0.0

Copper.rs is a simple library for 2D games written in Rust targeting HTML5.
Documentation

use wasm_bindgen::prelude::*;

#[wasm_bindgen]
extern {
    fn copperCreateAudio(audio_url: &str) -> usize;

    fn copperAudioLoaded(pointer: usize) -> bool;

    fn copperDropAudio(pointer: usize);
}

pub struct Audio {
    pub(crate) pointer: usize
}

impl Audio {
    pub fn new(audio_url: &str) -> Audio { Audio { pointer: copperCreateAudio(audio_url) } }

    pub fn loaded(&self) -> bool { copperAudioLoaded(self.pointer) }
}

impl Drop for Audio {
    fn drop(&mut self) {
        copperDropAudio(self.pointer);
    }
}