code: public function info($master) // only made public so that $this->fts can call it
      {
          if ($master == 'settings') {
              if (!isset($this->info['settings'])) {
                  if ($this->create('config', array('settings' => 'TEXT NOT NULL DEFAULT ""'))) {
                      $this->exec('INSERT INTO config (settings) VALUES (?)', serialize(array()));
                  }
                  $this->info['settings'] = array();
                  if ($settings = $this->value('SELECT settings FROM config')) {
                      $this->info['settings'] = unserialize($settings);
                  }
              }
          } elseif (!isset($this->info[$master])) { // 'tables' or 'indexes'
              if ($result = $this->query('SELECT type, name, tbl_name, sql FROM sqlite_master')) {
                  while (list($type, $name, $table, $sql) = $this->fetch($result)) {
                      switch ($type) {
                          case 'table':
                              $this->info['tables'][$table] = $sql;
                              break;
                          case 'index':
                              if (!empty($sql)) {
                                  $this->info['indexes'][$table][$name] = $sql;
                              }
                              break;
                      }
                  }
                  $this->close($result);
              }
          }
          switch (func_num_args()) {
              case 3:
                  list($master, $name, $add) = func_get_args();
                  $this->info[$master][$name] = $add;
                  break;
              case 2:
                  list($master, $name) = func_get_args();
  
                  return (isset($this->info[$master][$name])) ? $this->info[$master][$name] : null;
                  break;
              case 1:
                  list($master) = func_get_args();
  
                  return (isset($this->info[$master])) ? $this->info[$master] : null;
                  break;
          }
      }
docs: Only made public so that ``$this->fts`` can call it, and it's not documented to discourage it's use.