今週気になった情報。
C/C++/Objective-C text recognition library - Stack Overflow
文字認識ライブラリの話題。Tesseract OCR が紹介されていた。
MOONGIFT: » Twitter向けにも使えるCocoaアプリケーション向けRESTライブラリ「CocoaREST」:オープンソースを毎日紹介
sdegutis's CocoaREST at master - GitHub
github 掲載のサンプルコードを転載しておく。アクション-ターゲットっぽいインターフェイスとなっている。
- (void) awakeFromNib { // inside a header file, declare manager as an instance variable SDTwitterManager *manager; // create out manager, retaining it as we want it to stick around manager = [[SDTwitterManager manager] retain]; manager.successSelector = @selector(twitterManager:resultsReadyForTask:); manager.failSelector = @selector(twitterManager:failedForTask:); manager.delegate = self; // this is a must for certain API calls which require authentication // change them to real login values or the tasks will fail manager.username = @"USERNAME"; manager.password = @"PASSWORD"; // 3 tasks can be run simultaneously manager.maxConcurrentTasks = 3; // create and run a basic task SDTwitterTask *mentionsTask = [SDTwitterTask taskWithManager:manager]; mentionsTask.type = SDTwitterTaskGetPersonalTimeline; mentionsTask.count = 3; mentionsTask.page = 10; [mentionsTask run]; } - (void) twitterManager:(SDTwitterManager*)manager resultsReadyForTask:(SDTwitterTask*)task { NSLog(@"%@", task.results); } - (void) twitterManager:(SDTwitterManager*)manager failedForTask:(SDTwitterTask*)task { NSLog(@"%@", task.error); }
decodeHexString obj-c implementation, Should I support odd lengthed hexstrings, and if so, how? - Stack Overflow
気になったのは記事自体ではなく書かれていたソースコードの一部。以下に引用。
switch文で ... が使えるのか。int char2hex(unsigned char c) { switch (c) { case '0' ... '9': return c - '0'; case 'a' ... 'f': return c - 'a' + 10; case 'A' ... 'F': return c - 'A' + 10;
試してみた。
-(void)awakeFromNib { char ch = 'A'; switch (ch) { case '0' ... '9': NSLog(@"0-9"); break; case 'a' ... 'z': NSLog(@"a-z"); break; case 'A' ... 'Z': NSLog(@"A-Z"); break; default: NSLog(@"non"); } }
コンソール:
[Session started at 2009-11-15 06:02:54 +0900.] 2009-11-15 06:02:55.223 Helloworld2[825:10b] A-Z
おー。これは C言語の仕様なんだろうか。恥ずかしながらこれは知らなかった。