D言語からObjective-CとCocoaAPIを使いたい

NSMutableArray 配列の NSNumber 要素を表示したい

string 関係 の API を分離してみました。

サンプルコード

Powered by Prism

number/dub.json

{
    "authors": ["hidhok"],
    "description": "A D/Objective-C Cocoa application.",
    "name": "number",
    "dflags": ["-L-framework", "-LCocoa"],
    "sourceFiles": ["../cocoa/stringAPI"]
}               
number/source/app.d

/**
 *       number/source/app.d
 *    「MAC OSX COCOA プログラミング 第3章 Objective-C」から
 */		
module number.main;
import core.attribute : optional, selector;
import std.stdio;
import cocoa.strings;

void main(string[] args) {
    NSMutableArray array = NSMutableArray.alloc.init;
    foreach(i; 0..10) {
        NSNumber newNumber = NSNumber.alloc.init(i * 3);
        array.addObject = newNumber;
    }
    foreach(i; 0..10) {
        NSNumber numberToPrint = array.objectAtIndex(i);
        // NSLog("The number at index %d is %@".toNs, i, numberToPrint);
        // writefln("The number at index %d is %2d", i, numberToPrint.toInt);
        writefln("The number at index %d is %2s", i, numberToPrint.toStr);
    }
}               
cocoa/strings.d

Terminal


(base) hidhok % ./number
The number at index 0 is  0
The number at index 1 is  3
The number at index 2 is  6
The number at index 3 is  9
The number at index 4 is 12
The number at index 5 is 15
The number at index 6 is 18
The number at index 7 is 21
The number at index 8 is 24
The number at index 9 is 27
(base) hidhok %