From: Eric Mahurin Date: 2008-05-28T11:12:05+09:00 Subject: Re: [PATCH] lambda with normal block syntax ------=_Part_19733_6348666.1211940779998 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline On Sun, May 25, 2008 at 2:31 AM, Eric Mahurin wrote: > This patch is an independent but related one to my previous one. It can be > combined to allow for normal block syntax lambdas with default arguments. > This patch allows you to make lambda's more concisely by simply removing the > "lambda": Here is the same patch as an attachment for those that had issues with the patch in the message. I haven't figured out how to make gmail not base64 encode it. ------=_Part_19733_6348666.1211940779998 Content-Type: text/x-diff; name=block_lambda.patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_fgra7rxi0 Content-Disposition: attachment; filename=block_lambda.patch SW5kZXg6IHNhbXBsZS90ZXN0LnJiCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHNhbXBsZS90ZXN0LnJiCShyZXZp c2lvbiAxNjU4NSkKKysrIHNhbXBsZS90ZXN0LnJiCSh3b3JraW5nIGNvcHkpCkBAIC0xMDI3LDYg KzEwMjcsMjAgQEAKIGNhbGxfYXJndW1lbnRfdGVzdChmYWxzZSwgbGFtYmRhe3xhLHx9KQogY2Fs bF9hcmd1bWVudF90ZXN0KGZhbHNlLCBsYW1iZGF7fGEsfH0sIDEsMikKIAorY2FsbF9hcmd1bWVu dF90ZXN0KHRydWUsIHt8fH0pCitjYWxsX2FyZ3VtZW50X3Rlc3QoZmFsc2UsIHt8fH0sIDEpCitj YWxsX2FyZ3VtZW50X3Rlc3QodHJ1ZSwge3xhLHx9LCAxKQorY2FsbF9hcmd1bWVudF90ZXN0KGZh bHNlLCB7fGEsfH0pCitjYWxsX2FyZ3VtZW50X3Rlc3QoZmFsc2UsIHt8YSx8fSwgMSwyKQorCitj YWxsX2FyZ3VtZW50X3Rlc3QodHJ1ZSwgZG8gZW5kKQorY2FsbF9hcmd1bWVudF90ZXN0KGZhbHNl LCBkbyBlbmQsIDEpCitjYWxsX2FyZ3VtZW50X3Rlc3QodHJ1ZSwgZG8gfHwgZW5kKQorY2FsbF9h cmd1bWVudF90ZXN0KGZhbHNlLCBkbyB8fCBlbmQsIDEpCitjYWxsX2FyZ3VtZW50X3Rlc3QodHJ1 ZSwgZG8gfGEsfCBlbmQsIDEpCitjYWxsX2FyZ3VtZW50X3Rlc3QoZmFsc2UsIGRvIHxhLHwgZW5k KQorY2FsbF9hcmd1bWVudF90ZXN0KGZhbHNlLCBkbyB8YSx8IGVuZCwgMSwyKQorCiBjYWxsX2Fy Z3VtZW50X3Rlc3QodHJ1ZSwgUHJvYy5uZXd7fHx9KQogY2FsbF9hcmd1bWVudF90ZXN0KHRydWUs IFByb2MubmV3e3x8fSwgMSkKIGNhbGxfYXJndW1lbnRfdGVzdCh0cnVlLCBQcm9jLm5ld3t8YSx8 fSwgMSkKSW5kZXg6IHBhcnNlLnkKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcGFyc2UueQkocmV2aXNpb24gMTY1 ODUpCisrKyBwYXJzZS55CSh3b3JraW5nIGNvcHkpCkBAIC02NzAsNiArNjcwLDcgQEAKICV0eXBl IDxub2RlPiBhc3NvY19saXN0IGFzc29jcyBhc3NvYyB1bmRlZl9saXN0IGJhY2tyZWYgc3RyaW5n X2R2YXIgZm9yX3ZhcgogJXR5cGUgPG5vZGU+IGJsb2NrX3BhcmFtIG9wdF9ibG9ja19wYXJhbSBi bG9ja19wYXJhbV9kZWYgZl9vcHQKICV0eXBlIDxub2RlPiBidl9kZWNscyBvcHRfYnZfZGVjbCBi dmFyCisldHlwZSA8bm9kZT4gYmxvY2tfbGFtYmRhCiAldHlwZSA8bm9kZT4gbGFtYmRhIGZfbGFy Z2xpc3QgbGFtYmRhX2JvZHkKICV0eXBlIDxub2RlPiBicmFjZV9ibG9jayBjbWRfYnJhY2VfYmxv Y2sgZG9fYmxvY2sgbGhzIG5vbmUgZml0ZW0KICV0eXBlIDxub2RlPiBtbGhzIG1saHNfaGVhZCBt bGhzX2Jhc2ljIG1saHNfaXRlbSBtbGhzX25vZGUgbWxoc19wb3N0IG1saHNfaW5uZXIKQEAgLTI2 NDEsNiArMjY0MiwxMCBAQAogCQkJJCQgPSBkaXNwYXRjaDEoaGFzaCwgZXNjYXBlX1F1bmRlZigk MikpOwogCQkgICAgJSovCiAJCSAgICB9CisgICAgICAgICAgICAgICAgfCBibG9ja19sYW1iZGEK KwkJICAgIHsKKwkJCSQkID0gJDE7CisJCSAgICB9CiAJCXwga2V5d29yZF9yZXR1cm4KIAkJICAg IHsKIAkJICAgIC8qJSUlKi8KQEAgLTMzMjcsNiArMzMzMiw1NiBAQAogCQkgICAgfQogCQk7CiAK K2Jsb2NrX2xhbWJkYQk6IHRMQlJBQ0UKKwkJICAgIHsKKwkJICAgIC8qJSUlKi8KKwkJCWR5bmFf cHVzaCgpOworCQkJJDxudW0+JCA9IHJ1Ynlfc291cmNlbGluZTsKKwkJICAgIC8qJQorICAgICAg ICAgICAgICAgICAgICAlKi8KKwkJICAgIH0KKyAgICAgICAgICAgICAgICAgIGJsb2NrX3BhcmFt X2RlZiBjb21wc3RtdCAnfScKKwkJICAgIHsKKwkJICAgIC8qJSUlKi8KKyAgICAgICAgICAgICAg ICAgICAgICAgICQkID0gTkVXX0lURVIoJDMsICQ0KTsKKwkJCW5kX3NldF9saW5lKCQkLCAkPG51 bT4yKTsKKwkJCWR5bmFfcG9wKCk7CisJCQkkJC0+bmRfaXRlciA9IE5FV19GQ0FMTChyYl9pbnRl cm4oImxhbWJkYSIpLCAwKTsKKwkJCWZpeHBvcygkJC0+bmRfaXRlciwgJCQpOworCQkgICAgLyol CisJCQkkJCA9IG1ldGhvZF9hcmcoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGF0 Y2gxKGZjYWxsLCByYl9pbnRlcm4oImxhbWJkYSIpKSwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICBhcmdfbmV3KCkpOworCQkJJCQgPSBtZXRob2RfYWRkX2Jsb2NrKCQkLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoMihicmFjZV9ibG9jaywgZXNjYXBlX1F1bmRlZigk MyksICQ0KSk7CisJCSAgICAlKi8KKwkJICAgIH0KKwkJfCBrZXl3b3JkX2RvX2Jsb2NrCisJCSAg ICB7CisJCSAgICAvKiUlJSovCisJCQlkeW5hX3B1c2goKTsKKwkJCSQ8bnVtPiQgPSBydWJ5X3Nv dXJjZWxpbmU7CisJCSAgICAvKiUKKyAgICAgICAgICAgICAgICAgICAgJSovCisJCSAgICB9Cisg ICAgICAgICAgICAgICAgICBvcHRfYmxvY2tfcGFyYW0gY29tcHN0bXQga2V5d29yZF9lbmQKKwkJ ICAgIHsKKwkJICAgIC8qJSUlKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICQkID0gTkVXX0lU RVIoJDMsICQ0KTsKKwkJCW5kX3NldF9saW5lKCQkLCAkPG51bT4yKTsKKwkJCWR5bmFfcG9wKCk7 CisJCQkkJC0+bmRfaXRlciA9IE5FV19GQ0FMTChyYl9pbnRlcm4oImxhbWJkYSIpLCAwKTsKKwkJ CWZpeHBvcygkJC0+bmRfaXRlciwgJCQpOworCQkgICAgLyolCisJCQkkJCA9IG1ldGhvZF9hcmco CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2gxKGZjYWxsLCByYl9pbnRlcm4o ImxhbWJkYSIpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdfbmV3KCkpOworCQkJ JCQgPSBtZXRob2RfYWRkX2Jsb2NrKCQkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRp c3BhdGNoMihkb19ibG9jaywgZXNjYXBlX1F1bmRlZigkMyksICQ0KSk7CisJCSAgICAlKi8KKwkJ ICAgIH0KKyAgICAgICAgICAgICAgICA7CisKIGZfbGFyZ2xpc3QJOiAnKCcgZl9hcmdzIG9wdF9i dl9kZWNsIHJwYXJlbgogCQkgICAgewogCQkgICAgLyolJSUqLwo= ------=_Part_19733_6348666.1211940779998--