On 14/08/15 03:31 PM, Coda Highland wrote:
> On Fri, Aug 14, 2015 at 11:29 AM, <
tobias@justdreams.de> wrote:
>> Quoting "Soni L." <
fakedme@gmail.com>:
>>
>>> With orif:
>>>
>>> ```lua
>>> local flag = false
>>> if i == 1 then
>>> flag = true
>>> orif i == 2 then -- explicit fallthrough
>>> print(flag)
>>> else -- default
>>> print "Unknown!"
>>> end
>>> ```
>>
>> Lua has elseif which is I think exactly the same:
>> local flag = false
>> if i == 1 then
>> flag = true
>> elseif i == 2 then -- explicit fallthrough
>> print(flag)
>> else -- default
>> print "Unknown!"
>> end
>>
>> Regards,
>> Tobias
> No, elseif is totally different semantics, and elseif is exactly WHY I
> think orif is a bad idea: elseif only fires if an earlier condition
> wasn't true. orif looks syntactically like it ought to behave like
> elseif, but it doesn't.
>
> /s/ Adam
>
orif is the or operator combined with elseif.
It's similar to this (if Lua allowed this):
local flag = false
if i == 1 then
flag = true
goto next
elseif i == 2 then
::next::
print(flag)
else
print"Unknown!"
end
--
Disclaimer: these emails are public and can be accessed from <TODO: get a non-DHCP IP and put it here>. If you do not agree with this, DO NOT REPLY.