GithubHelp home page GithubHelp logo

atomikpanda / dynosoar Goto Github PK

View Code? Open in Web Editor NEW
0.0 4.0 0.0 1.24 MB

Dynosoar (Dynamic loading) and JSNR (JavaScriptNativeRuntime). Make tweaks using JavaScript.

Objective-C 14.39% Objective-C++ 60.61% JavaScript 5.32% C++ 8.33% C 0.45% Makefile 10.91%

dynosoar's Introduction

Dynosoar

Dynosoar (Dynamic loading) and JSNR (JavaScriptNativeRuntime). Make tweaks using JavaScript.

Basically I'm gonna try to explain what some of the classes do:

JSNRContext: a manager that contains the context of the JavaScriptEngine as well as some basic JS utility functions. JSNRInstance: A JSClass wrapper that holds a reference to an object that is allocated in ObjC. ExampleClass (I really should rename this): A JSClass wrapper that holds a reference to a Class object in Objective-C. (can be accessed directly from JS using var someClass = new ObjCClass("UIView") that will return something like [UIView class]

JSNRInvoke: A c++ class that has functions related to calling the methods in Objective-C using NSInvocation.

JSNRSigType: A c++ class that attemps to parse NSMethodSignatures and converts JSValueRefs to actual ctypes or Objective-C objects.

JSNRPrimitiveTypeHandler: handles the logic to convert JavaScript objects to whatever a Objective-C method wants. in js obj.someMethod$("this is a string in JS") and in objc if -someMethod:(const char*)arg1

it will convert the JSValueRef "this is a string" to a const char *

in js obj.anotherMethod$("this is a string in JS") if -anotherMethod:(NSString *)arg1

it will convert the JSValueRef "this is a string" to a NSString

Value: String: These classes make it easier to handle the JSC C API's JSValueRefs and JSStringRefs

dynosoar's People

Contributors

atomikpanda avatar imokhles avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.