original_docstring: List of columns that are not marked as hidden.
  
          This value is cached and becomes invalid if column visibility has
          changed since the last `render` call.
          
docstring: List of columns that are not marked as hidden.
  This value is cached and becomes invalid if column visibility has
  changed since the last `render` call.
docstring_tokens: List of columns that are not marked as hidden . This value is cached and becomes invalid if column visibility has changed since the last ` render ` call .
code: def visible_columns(self):
          """List of columns that are not marked as hidden.
  
          This value is cached and becomes invalid if column visibility has
          changed since the last `render` call.
          """
          if self._visible_columns is None:
              hidden = self.hidden
              self._visible_columns = [c for c in self.columns if not hidden[c]]
          return self._visible_columns
code_tokens: def visible_columns ( self ) : if self . _visible_columns is None : hidden = self . hidden self . _visible_columns = [ c for c in self . columns if not hidden [ c ] ] return self . _visible_columns
short_docstring: List of columns that are not marked as hidden.
short_docstring_tokens: List of columns that are not marked as hidden .
comment: """List of columns that are not marked as hidden.
  
          This value is cached and becomes invalid if column visibility has
          changed since the last `render` call.
          """