技術メモ

技術的なメモを載せていきます。

Swift3 で LOG_METHODを使う

Swift3 で LOG_METHOD を使う

 

f:id:unkillonline:20170623170119j:plain

 

 

 

 

■ 概要 

 Objective-C時代に愛用させていただいていた マクロ LOG / LOG_METHOD を

 Swift3向けに書き直しました。

 Swift2.x向けはすでに作っている方がいらっしゃったので、forkさせてもらって

 手直ししてます。 

 

 

Obejective-C版

d.hatena.ne.jp

 
 

 

Swift2.x版

blog.takezou.com

 

 

Swift3版(Swift2.x版のたいぞうさんのに少しだけ手を加えました)

github.com

 

 

で、作り直したものの自分だと微妙にわかりにくかったので、

今はこんなふうにしてます。

 

 Global.swift

-------------------------------------------------------------------------------------------------- 

#if DEBUG

    func LOG_METHOD(funcName:String = #function,lineNum:Int = #line,fullFileName:String = #file ){

        let fileName:String = fullFileName.replacingOccurrences(of: ".*/", with: "", options: String.CompareOptions.regularExpression, range: nil)

            print("[\(fileName)]","- \(funcName)")

    }

    func LOG(msg:Any) {

        print(msg)

    }

    

#else

    func LOG(msg:Any) {}

    func LOG_METHOD() {}

#endif

 

 

 

結果 

-------------------------------------------------------------------------------------------------- 

[TopViewController.swift] - viewDidLoad()

[TopViewController.swift] - db_reload(inmonth:inday:)