original_string: public function column($name, $callback = null)
      {
          list($name, $column) = $this->buildColumn($name, $callback);
  
          $this->columns[] = $column;
          $this->keyMap[$name] = \count($this->columns) - 1;
  
          return $column;
      }
code: public function column($name, $callback = null)
      {
          list($name, $column) = $this->buildColumn($name, $callback);
  
          $this->columns[] = $column;
          $this->keyMap[$name] = \count($this->columns) - 1;
  
          return $column;
      }
code_tokens: public function column ( $ name , $ callback = null ) { list ( $ name , $ column ) = $ this -> buildColumn ( $ name , $ callback ) ; $ this -> columns [ ] = $ column ; $ this -> keyMap [ $ name ] = \ count ( $ this -> columns ) - 1 ; return $ column ; }
docstring: Append a new column to the table.
  
  <code>
  // add a new column using just field name
  $table->column('username');
  
  // add a new column using a label (header title) and field name
  $table->column('User Name', 'username');
  
  // add a new column by using a field name and closure
  $table->column('fullname', function ($column)
  {
  $column->label = 'User Name';
  $column->value = function ($row) {
  return $row->first_name.' '.$row->last_name;
  };
  
  $column->attributes(function ($row) {
  return array('data-id' => $row->id);
  });
  });
  </code>
  
  @param  mixed  $name
  @param  mixed|null  $callback
  
  @return \Orchestra\Contracts\Html\Table\Column
docstring_tokens: Append a new column to the table .