#ifndef table_defs_h
#define table_defs_h

// Table definitions
table_def_t table_definitions[] = {
	{
		name: "SYS_COLUMNS",
		{
			{ /* bigint(20) unsigned */
				name: "TABLE_ID",
				type: FT_UINT,
				fixed_length: 8,

				has_limits: FALSE,
				limits: {
					can_be_null: FALSE,
					uint_min_val: 0,
					uint_max_val: 18446744073709551615ULL
				},

				can_be_null: FALSE
			},
			{ /* int(10) unsigned */
				name: "POS",
				type: FT_UINT,
				fixed_length: 4,

				can_be_null: FALSE
			},
			{ /*  */
				name: "DB_TRX_ID",
				type: FT_INTERNAL,
				fixed_length: 6,

				can_be_null: FALSE
			},
			{ /*  */
				name: "DB_ROLL_PTR",
				type: FT_INTERNAL,
				fixed_length: 7,

				can_be_null: FALSE
			},
			{ /* varchar(255) */
				name: "NAME",
				type: FT_CHAR,
				min_length: 0,
				max_length: 255,

				has_limits: FALSE,
				limits: {
					can_be_null: TRUE,
					char_min_len: 0,
					char_max_len: 255,
					char_ascii_only: TRUE
				},

				can_be_null: TRUE
			},
			{ /* int(10) unsigned */
				name: "MTYPE",
				type: FT_UINT,
				fixed_length: 4,

				can_be_null: TRUE
			},
			{ /* int(10) unsigned */
				name: "PRTYPE",
				type: FT_UINT,
				fixed_length: 4,

				can_be_null: TRUE
			},
			{ /* int(10) unsigned */
				name: "LEN",
				type: FT_UINT,
				fixed_length: 4,

				can_be_null: TRUE
			},
			{ /* int(10) unsigned */
				name: "PREC",
				type: FT_UINT,
				fixed_length: 4,

				can_be_null: TRUE
			},
			{ type: FT_NONE }
		}
	},
};

#endif
