From: Yukihiro Matsumoto Date: 2011-12-28T11:44:44+09:00 Subject: [ruby-core:41833] Re: Best way to separate implementation specific code? Hi, In message "Re: [ruby-core:41832] Re: Best way to separate implementation specific code?" on Wed, 28 Dec 2011 11:36:53 +0900, Luis Lavena writes: |Thank you matz for your response. | |The proposed restructuring, at least for "windows" platform is |precisely to avoid complicated #ifdef that make really hard to modify. | |Take as example file_expand_path: | |316 LOC |15 comments |13 #ifdef |Mix of posix + cygwin + windows |1 goto | |Pretty much the entire function can be replaced by Windows API. | |I've a non-goto, WideChar and faster implementation of it in 170 |lines, with lot of code that can be extracted and reused in other |functions. For only load_file_ok refactoring, I thought file restructuring is not required. But you have a set of functions to follow, I am not against it. matz.