14/08/19 19:09:17.26 TLaA01XG
※ここはSwiftスレです
148:デフォルトの名無しさん
14/08/19 20:08:11.95 V8/7iNdr
これ以上品質ネタで引っ張るなら
Patch pleaseでいいんじゃね。
swiftスレらしくswiftのコードに粘着してくれ。
149:デフォルトの名無しさん
14/08/19 21:19:55.30 c6AsXCDx
>>146 小飼自体が404にはほとんど書き込まず技術的な事は最近はQiitaだろ
6月以降だけを見ても404の方は数本、Qiitaの方はSwiftだけでも沢山書き込んでる
404は四方山話、コードならQiita
そんな404の古い四方山話を持ち出しても意味無いだろ Perlがもはや坂を転げ落ちてることは本人が良く知ってるだろう
SwiftでJSONとか参考になったよ
コードに文句つけるならSwiftのコードについて意見しろよ
150:デフォルトの名無しさん
14/08/19 21:49:44.49 aN7BQ+Qx
じゃあコードにケチつけようか
URLリンク(qiita.com)
var st = stat() // *1
let err = path.withCString { // *2
lstat($0, &st) // *3
}
わざわざ withCString 使うことない
C の const char* には String そのまま渡せる
var st = stat()
let err = lstat(path, &st)
151:デフォルトの名無しさん
14/08/19 21:56:15.35 FQGd2orm
ここまでのまとめ
小飼弾ばっかり注目されて悔しいニダ
実名で有益なことやってる奴見ると腹立つニダ
152:デフォルトの名無しさん
14/08/19 22:09:32.82 b1cKAETJ
白黒012値で判断するのはかなわんなw簡単だからアレな人にはそれしかなんだろうけどw
153:デフォルトの名無しさん
14/08/19 22:20:56.13 dii/unFm
beta 6 が出たらしいから、swift本体にケチつけようぜ
また色々言語仕様変更したらしいじゃねーか
154:デフォルトの名無しさん
14/08/19 22:25:06.20 RLzZhY/k
>>153
今回はあんま変更ないじゃん。細かい改良がメインだし
Xcodeでリンクが上手く行かないって問題がなんぼか出ているようだが
155:デフォルトの名無しさん
14/08/19 22:32:15.29 Laa9BX+V
>>150
いや、話の趣旨が、C言語の素のデータ型とSwiftとの連携の話なんで
そこは、withCStringでいいでしょ
その後の、withUnsafePointer にも繋がってくわけだし
156:デフォルトの名無しさん
14/08/19 23:43:35.67 I0aXY+SD
いくらなんでも嫉妬に狂いすぎだ
157:デフォルトの名無しさん
14/08/20 00:56:55.99 9QzdPeJo
粘着も信者もキモ過ぎ
158:デフォルトの名無しさん
14/08/20 00:59:22.66 +uPYMsWL
>>150 その下の可変長バッファ、、、
の *3 の下の
while fgets(&linebuf, Int32(linebufsize-1), fp) {
ここでエラーが出るようになったけど何が変わったんだっけ?
159:デフォルトの名無しさん
14/08/20 08:51:55.37 Nj3MsvBs
エラーメッセージ読めばわかるだろうに
160:デフォルトの名無しさん
14/08/20 10:09:10.39 +uPYMsWL
>>159 ごめん、わかった
type 'UnsafeMutablePointer<Int8>' does not conform to protocol 'BooleanType'
fgetsのreturnが char * でBooleanじゃないよと言ってるんだね
161:デフォルトの名無しさん
14/08/20 10:27:10.15 xEVixHuY
>>149
> SwiftでJSONとか参考になったよ
え、あのコードで参考になっちゃうんだ
162:デフォルトの名無しさん
14/08/20 10:40:51.47 3XEuOnAA
>>161
なるよ
163:デフォルトの名無しさん
14/08/20 10:51:38.06 +uPYMsWL
>>161 これだよ
Swiftで面倒なJSONの取り扱いをさらに10倍便利にするclass JSON
URLリンク(qiita.com)
164:デフォルトの名無しさん
14/08/20 11:27:17.95 Nj3MsvBs
これは参考になるな
165:デフォルトの名無しさん
14/08/20 12:32:27.86 +uPYMsWL
>>158 beta5での変更にあったね
“Optionals no longer implicitly evaluate to true when they have a value and false when they do not, to avoid confusion when working with optional Bool values.
Instead, make an explicit check against nil with the == or != operators to find out if an optional contains a value.”
166:デフォルトの名無しさん
14/08/20 12:47:51.13 IR8yJSUh
>>165
関係無い
fgets の戻り値は UnsafeMutablePointer<Int8>
UnsafeMutablePointer が BooleanType じゃなくなったのは Beta 6 から
167:デフォルトの名無しさん
14/08/20 12:52:10.49 IR8yJSUh
あ、違った
Beta 6 から BooleanType じゃなくなったのは AutoreleasingUnsafeMutablePointer の方だった
UnsafeMutablePointer は Beta 4 までは UnsafePointer で LogicValue プロトコルを実装してたが、
Beta 5 で UnsafeMutablePointer に名前が変更されると同時に BooleanType (Beta 4 以前での LogicValue) じゃなくなった