Converts an `UnresolvedItemName` to a `FullItemName` if the `UnresolvedItemName` is fully specified. Otherwise returns an error.
(mut raw_name: UnresolvedItemName)
| 145 | /// Converts an `UnresolvedItemName` to a `FullItemName` if the |
| 146 | /// `UnresolvedItemName` is fully specified. Otherwise returns an error. |
| 147 | pub fn full_name(mut raw_name: UnresolvedItemName) -> Result<FullItemName, PlanError> { |
| 148 | match raw_name.0.len() { |
| 149 | 3 => Ok(FullItemName { |
| 150 | item: ident(raw_name.0.pop().unwrap()), |
| 151 | schema: ident(raw_name.0.pop().unwrap()), |
| 152 | database: RawDatabaseSpecifier::Name(ident(raw_name.0.pop().unwrap())), |
| 153 | }), |
| 154 | 2 => Ok(FullItemName { |
| 155 | item: ident(raw_name.0.pop().unwrap()), |
| 156 | schema: ident(raw_name.0.pop().unwrap()), |
| 157 | database: RawDatabaseSpecifier::Ambient, |
| 158 | }), |
| 159 | _ => sql_bail!("unresolved name {} not fully qualified", raw_name), |
| 160 | } |
| 161 | } |
| 162 | |
| 163 | /// Normalizes a `CREATE` statement. |
| 164 | /// |
no test coverage detected