Skip to content

Instantly share code, notes, and snippets.

import <Foundation/CPObject.j>
@implementation AppController : CPObject
{
CPTextField _field;
CPURLConnection _submitConnection;
CPURLConnection _loadConnection;
}
{
"type" : "git",
"path" : "ssh://user@path.com/to/git/repo.git",
"parts" : [
{
"src" : "MyApplication",
"dst" : "",
"build" : "steam -c Release -b BUILD_PATH",
"copyFrom" : "Release/MyApplication"
},
import <Foundation/CPObject.j>
@implementation AppController : CPObject
{
var _testVar;
}
- (void)applicationDidFinishLaunching:(CPNotification)aNotification
var objj_debug_profile = { calls : [] }
function objj_msgSend_Profile(/*id*/ aReceiver, /*SEL*/ aSelector)
{
if (aReceiver == nil)
return nil;
// profiling book keeping
var profileRecord = {
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Name</key>
<string>YourApplication</string>
<key>Targets</key>
<array>
<dict>
<key>Name</key>
var connection = [[CPURLConnection alloc] initWithRequest:[CPURLRequest requestWithURL:"whatever.php?parameter=blah&etc=yadadada"] delegate:self startImmediately:NO];
[connection start];
...
- (void)connection:(CPURLConnection)aConnection didReceiveData:(CPString)data
{
if (connection == aConnection)
var objjPath = OBJJ_LIB+'/Frameworks-Rhino/Objective-J/Objective-J.js',
bridgePath = OBJJ_LIB+'/bridge.js',
envPath = "/Users/tlrobinson/280North/git/cappuccino/Tools/press/env.js";
/*
param context includes
scope: a global variable containing objj_files hash
processedFiles: hash containing file paths which have already been analyzed
dependencies: hash mapping from paths to an array of global variables defined by that file
[importCallback]: callback function that is called for each imported file (takes importing file path, and imported file path parameters)
function callbackWrap(object, property, callbackArgNum, wrapperMaker) {
var original = object[property];
object[property] = function() {
arguments[callbackArgNum] = wrapperMaker(arguments[callbackArgNum]);
return original.apply(this, arguments);
}
}
function reportExceptionsWrapperMaker(wrappedFunction) {
return function() {
function callbackWrap(object, property, callbackArgNum, wrapperMaker, extra) {
var original = object[property];
object[property] = function() {
arguments[callbackArgNum] = wrapperMaker(arguments[callbackArgNum], extra);
return original.apply(this, arguments);
}
}
function reportExceptionsWrapperMaker(wrappedFunction, label) {
return function() {
function callbackWrap(object, property, callbackArgNum, wrapperMaker, extra) {
var original = object[property];
object[property] = function() {
arguments[callbackArgNum] = wrapperMaker(arguments[callbackArgNum], extra);
return original.apply(this, arguments);
}
return original;
}
function performSelectorsWrapper(wrappedFunction) {