objective-c-parser

1.2.4 • Public • Published

objective-c-parser Build Status Coverage Status BCH compliance

Get an objective-c header file and translate it to equivalent javascript calls

Install

$ npm install objective-c-parser

Usage

const fs = require("fs");
const objectiveCParser = require("objective-c-parser");
const content = fs.readFileSync("/path/to/objective-c/Ponies.h");
 
const output = objectiveCParser(content);
 
fs.writeFileSync("/path/to/project/ponies.json", output);

Example

#import <Foundation/Foundation.h>
@protocol Ponies, Foo;
@interface BasicName : NSObject 
 
// Another comment 
@property(nonatomicreadonly) uninteresting<IgnorePlease> matcher;
 
 
// This is the comment of basic method one 
(NSInteger)basicMethodOne;
 
/**
 *  This is the comment of basic method two.
 *  It has multiple lines
 */
(NSString) basicMethodTwoWithArgOne:(NSInteger)argOne AndArgTwo:(NSString)argTwo;
@end
{
    "name": "BasicName",
    "methods": [
        {
            "args": [],
            "comment": "This is the comment of basic method one",
            "name": "basicMethodOne",
            "returnType": "NSInteger"
        },
        {
            "args": [
                {
                    "type": "NSInteger",
                    "name": "argOne"
                },
                {
                    "type": "NSString",
                    "name": "argTwo"
                }
            ],
            "comment":
                "This is the comment of basic method two.\nIt has multiple lines",
            "name": "basicMethodTwoWithArgOneAndArgTwo",
            "returnType": "NSString"
        }
    ]
}

Please be aware that name can be undefined if the headerfile does not contain an @interface declaration.

License

MIT © Daniel Schmidt

Readme

Keywords

Package Sidebar

Install

npm i objective-c-parser

Weekly Downloads

2

Version

1.2.4

License

MIT

Unpacked Size

12.9 kB

Total Files

8

Last publish

Collaborators

  • dschmidt