File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ use gitql_ast::object::GitQLObject;
77use gitql_ast:: object:: Group ;
88use gitql_ast:: object:: Row ;
99use gitql_ast:: value:: Value ;
10+ use gitql_engine:: data_provider:: select_values;
1011use gitql_engine:: data_provider:: DataProvider ;
1112use gitql_engine:: engine_evaluator:: evaluate_expression;
1213
@@ -25,11 +26,23 @@ impl DataProvider for FileDataProvider {
2526 fn provide (
2627 & self ,
2728 env : & mut Environment ,
28- _table : & str ,
29+ table : & str ,
2930 fields_names : & [ String ] ,
3031 titles : & [ String ] ,
3132 fields_values : & [ Box < dyn Expression > ] ,
3233 ) -> GitQLObject {
34+ let mut groups: Vec < Group > = vec ! [ ] ;
35+ if table. is_empty ( ) {
36+ if let Ok ( group) = select_values ( env, titles, fields_values) {
37+ groups. push ( group) ;
38+ }
39+
40+ return GitQLObject {
41+ titles : titles. to_vec ( ) ,
42+ groups,
43+ } ;
44+ }
45+
3346 let mut files: Vec < String > = vec ! [ ] ;
3447 for path in self . paths . iter ( ) {
3548 let files_tree = traverse_file_tree ( path, & self . excludes ) ;
@@ -41,7 +54,6 @@ impl DataProvider for FileDataProvider {
4154 }
4255 }
4356
44- let mut groups: Vec < Group > = vec ! [ ] ;
4557 let mut rows: Vec < Row > = vec ! [ ] ;
4658
4759 let names_len = fields_names. len ( ) as i64 ;
You can’t perform that action at this time.
0 commit comments