def if_features(self, stmt: Statement, mid: ModuleId) -> bool:
        """Evaluate ``if-feature`` substatements on a statement, if any.

        Args:
            stmt: Yang statement that is tested on if-features.
            mid: Identifier of the module in which `stmt` is present.

        Raises:
            ModuleNotRegistered: If `mid` is not registered in the data model.
            InvalidFeatureExpression: If a if-feature expression is not
                syntactically correct.
            UnknownPrefix: If a prefix specified in a feature name is not
                declared.
        """
        iffs = stmt.find_all("if-feature")
        if not iffs:
            return True
        for i in iffs:
            if not FeatureExprParser(i.argument, self, mid).parse():
                return False
        return True
Evaluate ``if-feature`` substatements on a statement, if any.

        Args:
            stmt: Yang statement that is tested on if-features.
            mid: Identifier of the module in which `stmt` is present.

        Raises:
            ModuleNotRegistered: If `mid` is not registered in the data model.
            InvalidFeatureExpression: If a if-feature expression is not
                syntactically correct.
            UnknownPrefix: If a prefix specified in a feature name is not
                declared.