@@ -2,24 +2,21 @@ use std::rc::Weak;
22use std:: { cell:: RefCell , path:: PathBuf , rc:: Rc } ;
33
44use csv:: StringRecord ;
5- use lsp_types:: { Location , Range , Uri } ;
5+ use lsp_types:: { Location , Uri } ;
66use ruff_python_ast:: { Alias , Expr , Identifier , Stmt , StmtAnnAssign , StmtAssert , StmtAssign , StmtAugAssign , StmtClassDef , StmtIf , StmtMatch , StmtRaise , StmtReturn , StmtTry , StmtTypeAlias , StmtWith } ;
77use ruff_text_size:: { Ranged , TextRange , TextSize } ;
8- use tracing:: { error, warn} ;
98use weak_table:: PtrWeakHashSet ;
109
11- use crate :: core:: csv_arch_builder:: CsvArchBuilder ;
1210use crate :: core:: file_mgr:: AstType ;
1311use crate :: core:: symbols:: module_symbol:: ModuleSymbol ;
14- use crate :: core:: xml_data:: OdooDataRecord ;
1512use crate :: features:: csv_ast_utils:: CsvAstUtils ;
1613use crate :: features:: references_xml:: XmlAstReferenceVisitor ;
1714use crate :: { S , Sy , oyarn} ;
1815use crate :: constants:: OYarn ;
1916use crate :: core:: evaluation:: { Evaluation , EvaluationSymbolPtr } ;
2017use crate :: core:: odoo:: SyncOdoo ;
2118use crate :: features:: goto_utils:: { GotoRequest , GotoSourceType , GotoUtils } ;
22- use crate :: { constants:: SymType , core:: { file_mgr:: { FileInfo , FileMgr } , symbols:: symbol:: Symbol } , features :: xml_ast_utils :: { XmlAstResult , XmlAstUtils } , threads:: SessionInfo , utils:: PathSanitizer } ;
19+ use crate :: { constants:: SymType , core:: { file_mgr:: { FileInfo , FileMgr } , symbols:: symbol:: Symbol } , threads:: SessionInfo , utils:: PathSanitizer } ;
2320
2421#[ derive( Debug , Clone ) ]
2522pub enum ReferenceTarget {
@@ -178,11 +175,11 @@ impl ReferenceFeature {
178175 }
179176 } ,
180177 SymType :: CSV_FILE => {
181- let model_name_pb = PathBuf :: from ( & file_s. borrow ( ) . paths ( ) [ 0 ] ) ;
182- let model_name = Sy ! ( model_name_pb. file_stem( ) . unwrap( ) . to_str( ) . unwrap( ) . to_string( ) ) ;
178+ // let model_name_pb = PathBuf::from(&file_s.borrow().paths()[0]);
179+ // let model_name = Sy!(model_name_pb.file_stem().unwrap().to_str().unwrap().to_string());
183180 let data = file_info. borrow ( ) . file_info_ast . borrow ( ) . text_document . as_ref ( ) . unwrap ( ) . contents ( ) . to_string ( ) ;
184181 let mut csv_reader = csv:: ReaderBuilder :: new ( ) . quoting ( false ) . from_reader ( data. as_bytes ( ) ) ;
185- locations. extend ( ReferenceFeature :: reference_in_csv_file ( session, & model_name , & file_s, & mut csv_reader, & ReferenceTarget :: String ( full_xml_id) ) ) ;
182+ locations. extend ( ReferenceFeature :: reference_in_csv_file ( session, & file_s, & mut csv_reader, & ReferenceTarget :: String ( full_xml_id) ) ) ;
186183 } ,
187184 _ => { }
188185 }
@@ -199,7 +196,7 @@ impl ReferenceFeature {
199196 }
200197 }
201198
202- fn reference_in_csv_file ( session : & mut SessionInfo , model_name : & OYarn , file_symbol : & Rc < RefCell < Symbol > > , csv_reader : & mut csv:: Reader < & [ u8 ] > , reference_target : & ReferenceTarget ) -> Vec < Location > {
199+ fn reference_in_csv_file ( session : & mut SessionInfo , file_symbol : & Rc < RefCell < Symbol > > , csv_reader : & mut csv:: Reader < & [ u8 ] > , reference_target : & ReferenceTarget ) -> Vec < Location > {
203200 let module = file_symbol. borrow ( ) . find_module ( ) ;
204201 let path = file_symbol. borrow ( ) . paths ( ) [ 0 ] . clone ( ) ;
205202 let uri = FileMgr :: pathname2uri ( & path) ;
@@ -215,15 +212,15 @@ impl ReferenceFeature {
215212 if !headers. is_empty ( ) && headers[ 0 ] == "id" {
216213 for result in csv_reader. records ( ) {
217214 if let Ok ( result) = result {
218- let in_record = ReferenceFeature :: search_in_record ( session, module. clone ( ) , & uri, & path, model_name . clone ( ) , & headers, & result, reference_target) ;
215+ let in_record = ReferenceFeature :: search_in_record ( session, module. clone ( ) , & uri, & path, & headers, & result, reference_target) ;
219216 locations. extend ( in_record) ;
220217 }
221218 }
222219 }
223220 locations
224221 }
225222
226- fn search_in_record ( session : & mut SessionInfo , module : Option < Rc < RefCell < Symbol > > > , uri : & Uri , path : & String , model_name : OYarn , headers : & Vec < OYarn > , record : & StringRecord , reference_target : & ReferenceTarget ) -> Vec < Location > {
223+ fn search_in_record ( session : & mut SessionInfo , module : Option < Rc < RefCell < Symbol > > > , uri : & Uri , path : & String , headers : & Vec < OYarn > , record : & StringRecord , reference_target : & ReferenceTarget ) -> Vec < Location > {
227224 if record. position ( ) . is_none ( ) {
228225 return vec ! [ ] ;
229226 }
0 commit comments