question on 'create_table' with limit option

at this method(rails/schema_migration.rb at 08754f12e65a9ec79633a605e986d0f1ffa4b251 · rails/rails · GitHub)

limit is default to nil which mean it is optional argument, and few lines down version_options only adds limit when the limit is passed from the argument.

and in this method(rails/schema_definitions.rb at 08754f12e65a9ec79633a605e986d0f1ffa4b251 · rails/rails · GitHub) pass on the options to new_column_definition , and this new_column_definition method(rails/schema_definitions.rb at 08754f12e65a9ec79633a605e986d0f1ffa4b251 · rails/rails · GitHub) will try to fetch(:limit) which will raise exception.

Am wondering had I missing something ?

If fetch does not find the key then it runs the block.

Colin