Last active
December 15, 2018 23:31
-
-
Save leptos-null/1b934d1b5ae521e5147bd410d2dbd9f6 to your computer and use it in GitHub Desktop.
InspectiveC module for Cycript
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* InspectiveC by DavidGoldman | |
* Place this file in `/usr/lib/cycript0.9/com/golddavid/inspectivec.cy` | |
* Run `@import com.golddavid.inspectivec` in cycript to use. | |
* | |
* This file has been adapted from | |
* https://github.com/DavidGoldman/InspectiveC/blob/master/cycript/InspectiveC.cy | |
* to use new cycript module features. | |
* | |
* This module is based on | |
* https://github.com/limneos/classdump-dyld/blob/master/classdumpdyldlib/classdumpdyld.cy | |
* | |
* InspectiveC will need to be installed. It is availible on | |
* DavidGoldman's Cydia Repository: http://apt.golddavid.com/ | |
*/ | |
dlopen("/usr/lib/libinspectivec.dylib", RTLD_NOW); | |
extern "C" void InspectiveC_setMaximumRelativeLoggingDepth(int); | |
extern "C" void InspectiveC_watchObject(id); | |
extern "C" void InspectiveC_unwatchObject(id); | |
extern "C" void InspectiveC_watchSelectorOnObject(id, SEL); | |
extern "C" void InspectiveC_unwatchSelectorOnObject(id, SEL); | |
extern "C" void InspectiveC_watchInstancesOfClass(Class); | |
extern "C" void InspectiveC_unwatchInstancesOfClass(Class); | |
extern "C" void InspectiveC_watchSelectorOnInstancesOfClass(Class, SEL); | |
extern "C" void InspectiveC_unwatchSelectorOnInstancesOfClass(Class, SEL); | |
extern "C" void InspectiveC_watchSelector(SEL); | |
extern "C" void InspectiveC_unwatchSelector(SEL); | |
/* logging */ | |
extern "C" void InspectiveC_enableLogging(); | |
extern "C" void InspectiveC_disableLogging(); | |
extern "C" void InspectiveC_enableCompleteLogging(); | |
extern "C" void InspectiveC_disableCompleteLogging(); | |
extern "C" void InspectiveC_flushLogFile(); | |
module.exports = { | |
setMaximumRelativeLoggingDepth: InspectiveC_setMaximumRelativeLoggingDepth, | |
watchObject: InspectiveC_watchObject, | |
unwatchObject: InspectiveC_unwatchObject, | |
watchSelectorOnObject: InspectiveC_watchSelectorOnObject, | |
unwatchSelectorOnObject: InspectiveC_unwatchSelectorOnObject, | |
watchInstancesOfClass: InspectiveC_watchInstancesOfClass, | |
unwatchInstancesOfClass: InspectiveC_unwatchInstancesOfClass, | |
watchSelectorOnInstancesOfClass: InspectiveC_watchSelectorOnInstancesOfClass, | |
unwatchSelectorOnInstancesOfClass: InspectiveC_unwatchSelectorOnInstancesOfClass, | |
watchSelector: InspectiveC_watchSelector, | |
unwatchSelector: InspectiveC_unwatchSelector, | |
enableLogging: InspectiveC_enableLogging, | |
isableLogging: InspectiveC_disableLogging, | |
enableCompleteLogging: InspectiveC_enableCompleteLogging, | |
disableCompleteLogging: InspectiveC_disableCompleteLogging, | |
flushLogFile: InspectiveC_flushLogFile | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment