diff options
Diffstat (limited to 'src/cocoa_bridge.rs')
| -rw-r--r-- | src/cocoa_bridge.rs | 32 | 
1 files changed, 29 insertions, 3 deletions
| diff --git a/src/cocoa_bridge.rs b/src/cocoa_bridge.rs index 58d74d2..ea88661 100644 --- a/src/cocoa_bridge.rs +++ b/src/cocoa_bridge.rs @@ -1,13 +1,39 @@ -extern crate cocoa; +use cocoa::base::nil; +use cocoa::foundation::{NSArray, NSAutoreleasePool, NSDictionary};  use MapGroup; -pub extern "C" fn x() { +#[repr(C)] +struct renameMeMapGroup { +} + +pub extern "C" fn parse_mappings() {      let sample_maps = "map <up> k  map <down> j"; -    let map_group = MapGroup::parse(sample_maps); +    let map_group = MapGroup::parse(sample_maps).unwrap();      unsafe { +        let _pool = NSAutoreleasePool::new(nil); + +        let maps = NSDictionary::init(nil).autorelease(); +        let modes = NSDictionary::init(nil).autorelease(); + +        for (trigger, action) in map_group.maps { +            let t = NSArray::array(nil).autorelease(); +        } + +        for (trigger, modes) in map_group.modes { +        } +    } +} + + +mod tests { +    use super::*; + +    #[test] +    fn parse_mappings_makes_cocoa_mappings() { +        parse_mappings();      }  } | 
