dmd.blockexit

Find out in what ways control flow can exit a statement block.

Authors

Walter Bright

Source: blockexit.d

  • BE

    Declaration

    enum BE: int;

    BE stands for BlockExit.

    Discussion

    It indicates if a statement does transfer control to another block. A block is a sequence of statements enclosed in { }

  • Declaration

    int blockExit(Statement s, FuncDeclaration func, bool mustNotThrow);

    Determine mask of ways that a statement can exit.

    Discussion

    Only valid after semantic analysis.

    Parameters

    Statement s

    statement to check for block exit status

    FuncDeclaration func

    function that statement s is in

    bool mustNotThrow

    generate an error if it throws

    Return Value

    BE.xxxx