def num_lines(self):
        """
        Lazy evaluation of the number of lines.

        Returns None for stdin input currently.
        """
        if self.from_stdin:
            return None
        if not self._num_lines:
            self._iterate_lines()
        return self._num_lines