Add non_exhaustive to enums#891
Conversation
|
Hi, thank you. Although, I was thinking about marking all necessary enums in one PR. I love small PRs, but a 1-line PR for each enum could be too small :D Especially given that, before merging, we also need to make a draft Can you include other enums in this PR? Here's my reasoning from #795, which enums to include:
Also, can you make a PR for |
- func::Function
- types::{ColumnRef, TableRef, UnOper, BinOper, Keyword, SubQueryOper}
- value::{Value, ValueTuple}
- extension::mysql::column::MySqlType
- extension::postgres::func::PgFunction
- extension::postgres::PgBinOper
- extension::postgres::select::SampleMethod
- extension::postgres::types::TypeAs
- extension::sqlite::SqliteBinOper
non_exhaustive to SimpleExprnon_exhaustive to enums
Expurple
left a comment
There was a problem hiding this comment.
Thank you. cargo test passes without warnings. Your choice of enums looks good to me. I agree with all of these.
I took my time to search for pub enum and review all enums in the workspace. I would extend your list to also include Error and these SQL features: ArrayType, BinaryType, ColumnSpec, ForeignKeyAction, ForeignKeyStatement, Frame, FrameType, IndexColumn, IndexHintScope, IndexHintType, IndexOrder, IndexStatement, IndexType, JoinOn, JoinType, LockBehavior, LockType, OnConflictAction, OnConflictTarget, OnConflictUpdate, Order, PgDateTruncUnit, PgInterval, QueryStatement, ReturningClause, SchemaStatement, SearchOrder, SelectDistinct, StringLen, SubQueryStatement, TableAlterOption, TableDropOpt, TableOpt, TablePartition, TableStatement, TypeAlterAddOpt, TypeAlterOpt, TypeDropOpt, TypeRef, UnionType, WindowSelectType. Perhaps, Mode and Token too. What do you think?
After that, can you open a draft PR to check and fix the breakage in sea_orm?
Expurple
left a comment
There was a problem hiding this comment.
Thank you for going through all of these.
Now, to proceed further, we need to discover all the missing arms in SeaQL/sea-orm#2607 and decide what to do with them.
|
The CI has detected missing arms in this repo too. Can you try to fix these arrors by adding an arm or moving the |
umm, I don't understand this part |
|
@tyt2y3 it's a reference to my earlier suggestions under the dependent When you match a |
|
Well, I can't find a way to fix errors. Unless we move the implementation to sea-query. |
|
Or we can add a corresponding enum that is only used for internal crates. |
We could merge these crates into |
|
I'll continue working on the branch |
PR Info
New Features
Bug Fixes
Breaking Changes
non_exhaustivetoChanges