From: Josh Cheek Date: 2012-02-20T07:08:40+09:00 Subject: Re: 1.9.2 syntax issues --f46d0444813b75b64004b9586b2c Content-Type: text/plain; charset=ISO-8859-1 On Sun, Feb 19, 2012 at 3:49 PM, Hal Fulton wrote: > I admit I still use 1.8.x more often than 1.9.x -- and I keep running > across > little things that puzzle or annoy me. > > Why is it that this statement: > > value > = > > if > block_given? > > yield > str > > > else > > > str.send(converter) > > > end > > > cannot be rewritten as: > > value = block_given? ? yield str : str.send(converter) > > > Just curious... > > Hal > > It seems to be getting parsed like this value = block_given? ? yield(str : str.send(converter)) You can get around it with parens like this: value = block_given? ? (yield str) : str.send(converter) Or by using the if/then/else/end keywords value = if block_given? then yield str else str.send(converter) end --f46d0444813b75b64004b9586b2c Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: base64 T24gU3VuLCBGZWIgMTksIDIwMTIgYXQgMzo0OSBQTSwgSGFsIEZ1bHRvbiA8c3BhbiBkaXI9Imx0 ciI+Jmx0OzxhIGhyZWY9Im1haWx0bzpydWJ5aGFja2VyQGdtYWlsLmNvbSI+cnVieWhhY2tlckBn bWFpbC5jb208L2E+Jmd0Ozwvc3Bhbj4gd3JvdGU6PGJyPjxkaXYgY2xhc3M9ImdtYWlsX3F1b3Rl Ij48YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46MCAwIDAgLjhl eDtib3JkZXItbGVmdDoxcHggI2NjYyBzb2xpZDtwYWRkaW5nLWxlZnQ6MWV4Ij4KSSBhZG1pdCBJ IHN0aWxsIHVzZSAxLjgueCBtb3JlIG9mdGVuIHRoYW4gMS45LnggLS0gYW5kIEkga2VlcCBydW5u aW5nIGFjcm9zczxicj5saXR0bGUgdGhpbmdzIHRoYXQgcHV6emxlIG9yIGFubm95IG1lLjxicj48 YnI+V2h5IGlzIGl0IHRoYXQgdGhpcyBzdGF0ZW1lbnQ6PGJyPjxicj6gIHZhbHVlID2goKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoCA8YnI+Cgqg oKAgaWYgYmxvY2tfZ2l2ZW4/oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoCA8YnI+oKCgoKAgeWllbGQgc3RyoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKAgPGJyPgoKoKCgIGVsc2WgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKAgPGJyPqCgoKCgIHN0ci5zZW5kKGNv bnZlcnRlcimgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgIDxicj4KCqCg oCBlbmSgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg oKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoCA8YnI+PGJyPmNhbm5vdCBiZSByZXdyaXR0 ZW4gYXM6PGJyPjxicj6gIHZhbHVlID0gYmxvY2tfZ2l2ZW4/ID8geWllbGQgc3RyIDogc3RyLnNl bmQoY29udmVydGVyKTxicj48YnI+PGJyPkp1c3QgY3VyaW91cy4uLjxzcGFuIGNsYXNzPSJIT0Vu WmIiPjxmb250IGNvbG9yPSIjODg4ODg4Ij48YnI+Cjxicj4KSGFsPGJyPjxicj4KPC9mb250Pjwv c3Bhbj48L2Jsb2NrcXVvdGU+PC9kaXY+PGRpdj48YnI+PC9kaXY+SXQgc2VlbXMgdG8gYmUgZ2V0 dGluZyBwYXJzZWQgbGlrZSB0aGlzPGRpdj52YWx1ZSA9IGJsb2NrX2dpdmVuPyA/IHlpZWxkKHN0 ciA6IHN0ci5zZW5kKGNvbnZlcnRlcikpPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5Zb3UgY2Fu IGdldCBhcm91bmQgaXQgd2l0aCBwYXJlbnMgbGlrZSB0aGlzOjxkaXY+CnZhbHVlID0gYmxvY2tf Z2l2ZW4/ID8gKHlpZWxkIHN0cikgOiBzdHIuc2VuZChjb252ZXJ0ZXIpPC9kaXY+PGRpdj48YnI+ PC9kaXY+PC9kaXY+PGRpdj5PciBieSB1c2luZyB0aGUgaWYvdGhlbi9lbHNlL2VuZCBrZXl3b3Jk czwvZGl2PjxkaXY+dmFsdWUgPSBpZiBibG9ja19naXZlbj8gdGhlbiB5aWVsZCBzdHIgZWxzZSBz dHIuc2VuZChjb252ZXJ0ZXIpIGVuZDwvZGl2Pgo= --f46d0444813b75b64004b9586b2c--