Skip to content

JSPatch Convertor is a tool that converts Objective-C code to JSPatch script automatically.

License

Notifications You must be signed in to change notification settings

billxie1988/JSPatchConvertor

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#JSPatch Convertor

JSPatch Convertor is a tool that converts Objective-C code to JSPatch script automatically.
( What's JSPatch? )

##Usage

Check out http://bang590.github.io/JSPatchConvertor

Please use Chrome or Safari.

#####Advice: You can also download Mac Application:

Click: https://github.com/DevSonw/JSPatchConvertor/blob/gh-pages/JSPatchConvertor.zip

##Supported

The Objective-C syntax below is supported to convert:

####Method declaration

- (void)requestUrl:(NSString *)url param:(NSDictionary *)dict {}
requestUrl_param: function(url, dict) {}

####Method calling

[[JPRequest alloc] initWithUrl:url param:dict];
JPRequest.alloc().initWithUrl_param(url, dict);

####Block syntax

[JPRquest handleCallback:^(id data, NSError *err) {}];
JPRquest.handleCallback(block('id,NSError*', function(data, err) {}));

####Variable declaration

NSString *str = @"content";
var str = "content";

####Getting/Setting Property

self.handler.successBlock(data);
self.handler.data = [[JPData alloc] init];
self.handler().successBlock()(data);
self.handler().setData(JPData.alloc().init());

####NSString / NSArray / nil ...

NSDictionary *dict = nil;
dict = @{
     @"arr": @[@(1), @"2"]
};
var dict = null;
dict = {
    "arr": [(1), "2"]
};

#Unsupported

JSPatch Convertor didn't support the Objective-C / C syntax below, you should modify it manually after converted:

  • Macro / constant variable / Enum
  • C function calling
  • GCD functions
  • Pointer / Struct
  • Getting / Setting private variable

About

JSPatch Convertor is a tool that converts Objective-C code to JSPatch script automatically.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 97.8%
  • ANTLR 1.5%
  • Other 0.7%