Skip to content

synt.stmt.expression ¤

stmt module-attribute ¤

Alias ExprStatement.

ExprStatement ¤

Bases: Statement

A statement that only contains a single expression.

Examples:

stmt = id_("print").expr().call(litstr("Hello world!")).stmt()
assert stmt.into_code() == "print('Hello world!')"
Source code in synt/stmt/expression.py
class ExprStatement(Statement):
    """A statement that only contains a single expression.

    Examples:
        ```python
        stmt = id_("print").expr().call(litstr("Hello world!")).stmt()
        assert stmt.into_code() == "print('Hello world!')"
        ```
    """

    expr: Expression
    """Inner expression."""

    def __init__(self, expr: IntoExpression):
        """Initialize a nwe statement.

        Args:
            expr: Inner expression.
        """
        self.expr = expr.into_expression()

    def indented(self, indent_width: int, indent_atom: str) -> str:
        return f"{indent_atom * indent_width}{self.expr.into_code()}"

expr instance-attribute ¤

expr: Expression = into_expression()

Inner expression.

__init__ ¤

__init__(expr: IntoExpression)

Initialize a nwe statement.

Parameters:

Name Type Description Default
expr IntoExpression

Inner expression.

required
Source code in synt/stmt/expression.py
def __init__(self, expr: IntoExpression):
    """Initialize a nwe statement.

    Args:
        expr: Inner expression.
    """
    self.expr = expr.into_expression()

indented ¤

indented(indent_width: int, indent_atom: str) -> str
Source code in synt/stmt/expression.py
def indented(self, indent_width: int, indent_atom: str) -> str:
    return f"{indent_atom * indent_width}{self.expr.into_code()}"