/**
  * Constructor
  *
  * @param object $column
  *
  * @return void
  */
 function __construct($column)
 {
     parent::__construct($column->attrs->name);
     $dbParser = DB::getParser();
     $this->name = $dbParser->parseColumnName($this->name);
     $this->argument = new QueryArgument($column);
 }
 /**
  * Constructor
  *
  * @param object $column
  * @return void
  */
 function __construct($column)
 {
     parent::__construct($column->attrs->name);
     $dbParser = DB::getParser();
     $this->name = $dbParser->parseColumnName($this->name);
     if ($column->attrs->var) {
         $this->argument = new QueryArgument($column);
     } else {
         if (strpos($column->attrs->default, '.') !== FALSE) {
             $this->default_value = "'" . $dbParser->parseColumnName($column->attrs->default) . "'";
         } else {
             $default_value = new DefaultValue($this->name, $column->attrs->default);
             if ($default_value->isOperation()) {
                 $this->argument = new QueryArgument($column, TRUE);
             } else {
                 $this->default_value = $default_value->toString();
                 if ($default_value->isStringFromFunction()) {
                     $this->default_value = '"\'".' . $this->default_value . '."\'"';
                 }
                 if ($default_value->isString()) {
                     $this->default_value = '"' . $this->default_value . '"';
                 }
             }
         }
     }
 }
 /**
  * Constructor
  *
  * @param object $column
  *
  * @return void
  */
 function InsertColumnTag($column)
 {
     parent::ColumnTag($column->attrs->name);
     $dbParser = DB::getParser();
     $this->name = $dbParser->parseColumnName($this->name);
     $this->argument = new QueryArgument($column);
 }
 /**
  * Constructor
  *
  * @param string|object $column
  * @return void
  */
 function SelectColumnTag($column)
 {
     if ($column == "*" || $column->attrs->name == '*') {
         parent::ColumnTag(NULL);
         $this->name = "*";
     } else {
         parent::ColumnTag($column->attrs->name);
         $dbParser = DB::getParser();
         $this->name = $dbParser->parseExpression($this->name);
         $this->alias = $column->attrs->alias;
         $this->click_count = $column->attrs->click_count;
     }
 }