Add a resolved table. Returns error if name conflicts.
(&mut self, table: ResolvedTable)
| 46 | |
| 47 | /// Add a resolved table. Returns error if name conflicts. |
| 48 | pub fn add(&mut self, table: ResolvedTable) -> Result<()> { |
| 49 | let key = table.ref_name().to_string(); |
| 50 | if self.tables.contains_key(&key) { |
| 51 | return Err(SqlError::Parse { |
| 52 | detail: format!("duplicate table reference: {key}"), |
| 53 | }); |
| 54 | } |
| 55 | self.order.push(key.clone()); |
| 56 | self.tables.insert(key, table); |
| 57 | Ok(()) |
| 58 | } |
| 59 | |
| 60 | /// Resolve a column name, optionally qualified with a table reference. |
| 61 | /// |