diff --git a/.gitignore b/.gitignore index 8e377eb..b54b163 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ *.dummy demos build +Makefile diff --git a/src/audio.rs b/src/audio.rs index b72d2ae..2714f97 100644 --- a/src/audio.rs +++ b/src/audio.rs @@ -49,8 +49,8 @@ pub enum AudioFormat { S16MsbAudioFormat = AUDIO_S16MSB as int } -pub static U16AudioFormat: AudioFormat = U16LsbAudioFormat; -pub static S16AudioFormat: AudioFormat = S16LsbAudioFormat; +pub static U16_AUDIO_FORMAT: AudioFormat = U16LsbAudioFormat; +pub static S16_AUDIO_FORMAT: AudioFormat = S16LsbAudioFormat; impl AudioFormat { pub fn to_ll_format(self) -> uint16_t { diff --git a/src/event.rs b/src/event.rs index 4971838..dcacef1 100644 --- a/src/event.rs +++ b/src/event.rs @@ -200,12 +200,14 @@ pub enum AppState { } fn wrap_app_state(bitflags: u8) -> ~[AppState] { - do [AppMouseFocusState, + let flags = [AppMouseFocusState, AppInputFocusState, - AppActiveState].filter_mapped |&flag| { + AppActiveState]; + + do flags.iter().filter_map |&flag| { if bitflags & (flag as u8) != 0 { Some(flag) } else { None } - } + }.collect() } #[deriving(Eq)] @@ -485,7 +487,7 @@ pub enum Mod { } fn wrap_mod_state(bitflags: ll::SDLMod) -> ~[Mod] { - do [NoMod, + let flags = [NoMod, LShiftMod, RShiftMod, LCtrlMod, @@ -497,10 +499,12 @@ fn wrap_mod_state(bitflags: ll::SDLMod) -> ~[Mod] { NumMod, CapsMod, ModeMod, - ReservedMod].filter_mapped |&flag| { + ReservedMod]; + + do flags.iter().filter_map |&flag| { if bitflags & (flag as ll::SDLMod) != 0 { Some(flag) } else { None } - } + }.collect() } #[deriving(Eq)] @@ -513,14 +517,16 @@ pub enum HatState { } fn wrap_hat_state(bitflags: u8) -> ~[HatState] { - do [CenteredHatState, + let flags = [CenteredHatState, UpHatState, RightHatState, DownHatState, - LeftHatState].filter_mapped |&flag| { + LeftHatState]; + + do flags.iter().filter_map |&flag| { if bitflags & (flag as u8) != 0 { Some(flag) } else { None } - } + }.collect() } #[deriving(Eq)] @@ -555,16 +561,18 @@ pub enum MouseState { } fn wrap_mouse_state(bitflags: u8) -> ~[MouseState] { - do [LeftMouseState, + let flags = [LeftMouseState, MiddleMouseState, RightMouseState, WheelUpMouseState, WheelDownMouseState, X1MouseState, - X2MouseState].filter_mapped |&flag| { + X2MouseState]; + + do flags.iter().filter_map |&flag| { if bitflags & (flag as u8) != 0 { Some(flag) } else { None } - } + }.collect() } #[deriving(Eq)] @@ -759,14 +767,15 @@ pub fn get_key_state() -> ~[(Key, bool)] { let mut i = -1; unsafe { - do vec::raw::from_buf_raw(data, num as uint).filter_mapped |&state| { + let buf = vec::raw::from_buf_raw(data, num as uint); + do buf.iter().filter_map |&state| { i += 1; match wrap_key(i as ll::SDLKey) { Some(key) => Some((key, state == 1)), None => None } - } + }.collect() } } diff --git a/src/img.rs b/src/img.rs index 1d46554..a77efd3 100644 --- a/src/img.rs +++ b/src/img.rs @@ -40,12 +40,14 @@ pub fn init(flags: &[InitFlag]) -> ~[InitFlag] { }) }; - do [InitJPG, + let flags = [InitJPG, InitPNG, - InitTIF].filter_mapped |&flag| { + InitTIF]; + + do flags.iter().filter_map |&flag| { if bitflags & (flag as c_int) != 0 { Some(flag) } else { None } - } + }.collect() } pub fn load(file: &Path) -> Result<~Surface, ~str> { diff --git a/src/sdl.rs b/src/sdl.rs index 41c0eb4..6e001a0 100644 --- a/src/sdl.rs +++ b/src/sdl.rs @@ -134,17 +134,19 @@ pub fn was_inited(flags: &[InitFlag]) -> ~[InitFlag] { }; let bitflags = unsafe { ll::SDL_WasInit(flags) }; - do [InitTimer, + let flags = [InitTimer, InitAudio, InitVideo, InitCDRom, InitJoystick, InitNoParachute, InitEventThread, - InitEverything].filter_mapped |&flag| { + InitEverything]; + + do flags.iter().filter_map |&flag| { if bitflags & (flag as ll::SDL_InitFlag) != 0 { Some(flag) } else { None } - } + }.collect() } pub fn get_error() -> ~str { diff --git a/src/video.rs b/src/video.rs index 34d0b21..6422ff0 100644 --- a/src/video.rs +++ b/src/video.rs @@ -385,7 +385,7 @@ pub struct VideoInfo { } fn wrap_video_info_flags(bitflags: u32) -> ~[VideoInfoFlag] { - do [HWAvailable, + let flags = [HWAvailable, WMAvailable, BlitHW, BlitHWColorkey, @@ -393,10 +393,12 @@ fn wrap_video_info_flags(bitflags: u32) -> ~[VideoInfoFlag] { BlitSW, BlitSWColorkey, BlitSWAlpha, - BlitFill].filter_mapped |&flag| { + BlitFill]; + + do flags.iter().filter_map |&flag| { if bitflags & (flag as u32) != 0 { Some(flag) } else { None } - } + }.collect() } pub fn get_video_info() -> ~VideoInfo {