[−][src]Crate chainable_if
This crate provides the if_chain!
macro -- a macro for composing
long chains of if-else if-else statements.
It is intended to provide an alternative to writing if chains with match
,
such as:
ⓘThis example is not tested
match () { _ if some_condition => ..., _ if some_other_condition => ..., _ if some_third_condition => ..., _ => ..., }
Example usage
While it is mainly intended for long chains, if_chain!
can be used
for simple if-else situations, such as:
ⓘThis example is not tested
if_chain! { | some_condition => (/* some_condition is true */), | _ => (/* the else branch */) }
The earlier match
example can be rewritten as:
ⓘThis example is not tested
if_chain! { | some_condition => ..., | some_other_condition => ..., | some_third_condition => ..., }
Note that the else
branch is not required, since if_chain!
simply gets
expanded into:
ⓘThis example is not tested
if some_condition { ... } else if some_other_condition } ... } else if some_third_condition { ... }
Macros
if_chain | A macro for writing if chains |