From: Brion Vibber Date: Tue, 19 Oct 2010 00:21:12 +0000 (-0700) Subject: Drop reverseTypeMap from schemas; we're now doing the forward-mapping on the canonica... X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=a923ef971912e7d095cd4cae335abb9095930ecb;p=quix0rs-gnu-social.git Drop reverseTypeMap from schemas; we're now doing the forward-mapping on the canonical def before comparing --- diff --git a/lib/mysqlschema.php b/lib/mysqlschema.php index 25f0e52f16..9785deb661 100644 --- a/lib/mysqlschema.php +++ b/lib/mysqlschema.php @@ -96,13 +96,6 @@ class MysqlSchema extends Schema // warning -- 'unsigned' attr on numbers isn't given in DATA_TYPE and friends. // It is stuck in on COLUMN_TYPE though (eg 'bigint(20) unsigned') - /* - list($type, $size) = $this->reverseMapType($row['DATA_TYPE']); - $field['type'] = $type; - if ($size !== null) { - $field['size'] = $size; - } - */ $field['type'] = $type = $row['DATA_TYPE']; if ($type == 'char' || $type == 'varchar') { @@ -487,37 +480,6 @@ class MysqlSchema extends Schema return $type; } - /** - * Map a MySQL native type back to an independent type + size - * - * @param string $type - * @return array ($type, $size) -- $size may be null - */ - /* - protected function reverseMapType($type) - { - $type = strtolower($type); - $map = array( - 'decimal' => array('numeric', null), - 'tinyint' => array('int', 'tiny'), - 'smallint' => array('int', 'small'), - 'mediumint' => array('int', 'medium'), - 'bigint' => array('int', 'big'), - 'tinyblob' => array('blob', 'tiny'), - 'mediumblob' => array('blob', 'medium'), - 'longblob' => array('blob', 'long'), - 'tinytext' => array('text', 'tiny'), - 'mediumtext' => array('text', 'medium'), - 'longtext' => array('text', 'long'), - ); - if (isset($map[$type])) { - return $map[$type]; - } else { - return array($type, null); - } - } - */ - function typeAndSize($column) { if ($column['type'] == 'enum') { diff --git a/lib/pgsqlschema.php b/lib/pgsqlschema.php index 0ffbcfc480..e5442467c4 100644 --- a/lib/pgsqlschema.php +++ b/lib/pgsqlschema.php @@ -81,15 +81,6 @@ class PgsqlSchema extends Schema $orderedFields[$row['ordinal_position']] = $name; $field = array(); - - // ?? - /* - list($type, $size) = $this->reverseMapType($row['udt_name']); - $field['type'] = $type; - if ($size !== null) { - $field['size'] = $size; - } - */ $field['type'] = $row['udt_name']; if ($type == 'char' || $type == 'varchar') { @@ -366,12 +357,16 @@ class PgsqlSchema extends Schema $type = $map[$type]; } - if (!empty($column['size'])) { - $size = $column['size']; - if ($type == 'int' && - in_array($size, array('small', 'big'))) { - $type = $size . 'int'; + if ($type == 'int') { + if (!empty($column['size'])) { + $size = $column['size']; + if ($size == 'small') { + return 'int2'; + } else if ($size == 'big') { + return 'int8'; + } } + return 'int4'; } return $type; @@ -388,27 +383,6 @@ class PgsqlSchema extends Schema } } - /** - * Map a native type back to an independent type + size - * - * @param string $type - * @return array ($type, $size) -- $size may be null - */ - protected function reverseMapType($type) - { - $type = strtolower($type); - $map = array( - 'int4' => array('int', null), - 'int8' => array('int', 'big'), - 'bytea' => array('blob', null), - ); - if (isset($map[$type])) { - return $map[$type]; - } else { - return array($type, null); - } - } - /** * Filter the given table definition array to match features available * in this database. diff --git a/lib/schema.php b/lib/schema.php index 16fb502253..9f2899ba8c 100644 --- a/lib/schema.php +++ b/lib/schema.php @@ -772,23 +772,6 @@ class Schema } } - /** - * Map a native type back to an independent type + size - * - * @param string $type - * @return array ($type, $size) -- $size may be null - */ - protected function reverseMapType($type) - { - $sizes = array('tiny', 'small', 'medium', 'big'); - foreach ($sizes as $prefix) { - if (substr($type, 0, strlen($prefix)) == $prefix) { - return array(substr($type, strlen($prefix)), $prefix); - } - } - return array($type, null); - } - /** * Convert an old-style set of ColumnDef objects into the current * Drupal-style schema definition array, for backwards compatibility