2. I'm not sure if I understand your correctly, but it should work if you wrap it in (). I actually have that very same example in 'broken.js' [0]
3. Sure. As you can write normal JavaScript, just use:
Car.x = (arg){ //etc }
[0]: https://github.com/binlain/designtojs/blob/master/test/broke...
loadAndPrintFile: (contents) { if (!contents) { fs.readFile() -> (error!, contents) } console.log(contents); }
I'm asking because I built something similar (though it only worked with promises, not general async functions), and I'm curious to compare approaches :-) - mine is a sweet.js macro: http://pastie.org/9410315 (uses https://github.com/petkaantonov/bluebird and https://github.com/BranchMetrics/promise-accum). The basic syntax would be:
task { item1 <- LoadItem(1); item2 <- LoadItem(item1.foreign_key); ret <- DoSomethingWithItems(item1, item2); }
(again, beautified because DesignToJS crams everything in one line to preserve the line numbers of your actual code):
function loadAndPrintFile(contents) { if (!contents) { fs.readFile(function(error, contents){ if(error !== null && error !== undefined){ return error; } }); } console.log(contents); }
I'd suggest writing it like this in DesignToJS:
loadAndPrintFile: (contents! console.log) { fs.readFile() -> (error!, contents! console.log) }
function loadAndPrintFile(contents) { if(contents !== null && contents !== undefined){ return console.log(contents); } fs.readFile(function(error, contents){ if(error !== null && error !== undefined){ return error; } if(contents !== null && contents !== undefined){ return console.log(contents); } }); }
2. I'm not sure if I understand your correctly, but it should work if you wrap it in (). I actually have that very same example in 'broken.js' [0]
3. Sure. As you can write normal JavaScript, just use:
The ':' operator is supposed to be a shortcut for X.prototype.Y[0]: https://github.com/binlain/designtojs/blob/master/test/broke...