Commit Graph

3556 Commits

Author SHA1 Message Date
kevstone 1ed85d67d6 Fixed funcsig arg mapping bug 2024-02-10 10:25:14 +00:00
kevstone 74673d6220 Fixed arg issue in constructor 2024-02-10 09:01:34 +00:00
kevstone ea49245513 Removed duplicate member functions in header 2024-02-10 08:52:36 +00:00
kevstone 6bf0736e83 Initial support for template function conversion 2024-02-09 21:07:20 +00:00
kevstone 6090d642aa Bit accessor now converting correctly 2024-02-09 14:06:52 +00:00
kevstone bf05cfc779 Moved creation of default constructor to ccode object to ensure correct conversion 2024-02-09 08:13:33 +00:00
kevstone 542ed863a2 Added default constructor if no C version exists 2024-02-08 16:27:05 +00:00
kevstone 963c28a1de LongData converting fully 2024-02-08 14:50:26 +00:00
kevstone 5999f9001b Fixed sizeof parse bug 2024-02-08 13:14:47 +00:00
kevstone 0d3692512e Added conversion from malloc to CONTAINER.resize() 2024-02-08 12:11:15 +00:00
kevstone a481d3896c Can now distinguish between grib_xxx call that is calling self versus another class 2024-02-08 08:56:02 +00:00
kevstone c2fcbdd126 Added ret as GribStatus return value 2024-02-08 08:09:25 +00:00
kevstone 6e889576fc Fixed bug with detecting base func calls 2024-02-07 23:22:12 +00:00
kevstone ba803aa537 Added support for using Class::func 2024-02-07 23:00:10 +00:00
kevstone 7a575acd5a grib_unpack processing 2024-02-07 10:37:31 +00:00
kevstone 62f3edcd71 Re-added support for parsing parents 2024-02-06 20:24:29 +00:00
kevstone aac39e9f67 More conversion bug fixes 2024-02-06 19:01:11 +00:00
kevstone 508d386311 Final conversion fixes for ASCII accessor 2024-02-06 15:41:30 +00:00
kevstone 97b01e1374 Fixed return statement bug 2024-02-06 15:13:46 +00:00
kevstone 57a02f2831 Containers default initialised with size where required 2024-02-06 12:45:16 +00:00
kevstone d01526d514 Added default init value for containers 2024-02-06 10:00:29 +00:00
kevstone ded91257b4 Added support for assigning single values to a C++ container 2024-02-06 09:04:40 +00:00
kevstone dbe4544c1f Converting grib(Un)PackXXX to member function calls 2024-02-05 22:03:49 +00:00
kevstone 620d90b5ea Added better identification of converted data members 2024-02-05 20:40:17 +00:00
kevstone e116818d71 Added support for well-known C function conversions 2024-02-05 14:35:45 +00:00
kevstone e7e0585ca3 Added rule to convert len[0] correctly 2024-02-05 10:31:57 +00:00
kevstone 2d70639cc9 Added support for virtual funcs with no C++ conversion defined (yet) 2024-02-05 09:15:18 +00:00
kevstone 30e7ee9b6d Fixed GribStatus return type bug 2024-02-04 18:47:03 +00:00
kevstone c7fd597563 Updates to assist with return code processing... 2024-02-04 18:23:28 +00:00
kevstone 2123683e85 Fixed issue recognising & types 2024-02-04 17:44:11 +00:00
kevstone 71a0a04e39 Updated container_utils to override for accessors 2024-02-04 12:10:15 +00:00
kevstone 34fff52f24 Added while statement conversion 2024-02-04 11:10:02 +00:00
kevstone bcd83f8864 Fixed issue parsing multiple indirections, e.g. a->b->c 2024-02-02 09:48:14 +00:00
kevstone 8633a3e9c5 Fixed variable parsing issue 2024-02-02 08:06:31 +00:00
kevstone 48b7cadeca Added remaining base conversion validators 2024-02-01 19:40:52 +00:00
kevstone 1d2e1c7518 Fixed issue with incorrect prefix/postfix conversion 2024-02-01 18:05:35 +00:00
kevstone fa2bd6ec64 ProjString now fully converting 2024-02-01 11:10:36 +00:00
kevstone 2f025dea05 Macro parsing (finally) working! 2024-02-01 07:53:00 +00:00
kevstone a65632c174 Fixed issue parsing struct func call 2024-01-30 08:18:32 +00:00
kevstone d444fcd632 Improved C++ container size handling 2024-01-29 21:50:19 +00:00
kevstone cc0a793745 Added more advanced conversions 2024-01-29 19:57:27 +00:00
kevstone 9030f1f4ba Added funcsig buffer mappings 2024-01-26 15:26:50 +00:00
kevstone caaae6360d Prep for buffer class 2024-01-26 14:29:28 +00:00
kevstone a4af69f1b5 Added additional C to C++ conversions 2024-01-26 11:55:35 +00:00
kevstone 61ad744fcf Fixed issue with member variable conversion 2024-01-25 21:00:24 +00:00
kevstone 5b4e8a9b33 Added handling for sizeof(x)/sizeof(*x) 2024-01-25 19:51:28 +00:00
kevstone b46ba3e014 Added conversion_pack 2024-01-25 19:44:10 +00:00
kevstone 62587e1f81 Added conversion_validation 2024-01-25 12:59:23 +00:00
kevstone bffc0de8a9 Constructor work 2024-01-25 04:39:29 +00:00
kevstone 0d4d3fe728 Added special-function handling 2024-01-25 01:03:13 +00:00
kevstone 462683ef9e Fixed issue calling functions with address of vars 2024-01-25 00:03:42 +00:00
kevstone 86b20d68c2 Fixed issue with GribStatus ret values 2024-01-24 22:28:26 +00:00
kevstone b5f030abda Added literal mapping and conversion assistant 2024-01-24 21:50:11 +00:00
kevstone 337e983570 Improved function call conversion 2024-01-24 20:05:18 +00:00
kevstone e7da886ff0 Implemented NoneValue across hierarchy; invalid funcsig args no longer converted 2024-01-24 18:08:46 +00:00
kevstone 70a069533c Proper conversion of funcsig and funcbody args 2024-01-24 16:38:38 +00:00
kevstone 64b24dee6c Identify and remove (or comment out as appropriate) invalid types 2024-01-23 12:43:48 +00:00
kevstone 58f88b4b0e Fixed func pointer parse issue. Added Value decl ref and converter. 2024-01-23 10:09:39 +00:00
kevstone ab92b6114c Added logic for arg conversions, and a NONE arg for C vars that don't have a C++ equivalent 2024-01-22 22:28:20 +00:00
kevstone 31315e4cb5 Clang version of C++ code now generating 2024-01-21 21:12:50 +00:00
kevstone 36b9500011 Fixed rendering of function pointer 2024-01-20 23:27:28 +00:00
kevstone 5912873c04 Further debug info 2024-01-20 23:13:38 +00:00
kevstone f599a6ad4e Added extra debugging to help identify AST conversion errors 2024-01-20 20:16:53 +00:00
kevstone 4d208f0da6 Added new converters 2024-01-20 16:18:28 +00:00
Shahram Najm 67be77071b Merge branch 'develop' into convertion-inherit 2024-01-20 13:18:56 +00:00
kevstone 03db6927eb Fixed issue with member functions being forwartd declared 2024-01-19 22:03:43 +00:00
kevstone 21f62d27f3 Added objects/converters for other member function types 2024-01-19 19:48:44 +00:00
kevstone 3f459cf299 Refactor to allow consistent function object parsing 2024-01-19 19:04:52 +00:00
Shahram Najm 6776116c11 ECC-1749: grib_dump: No gap between offsets and key name 2024-01-19 17:18:29 +00:00
Shahram Najm 3c29611066 Cleanup 2024-01-19 14:57:17 +00:00
shahramn b2a6ef824f
Merge pull request #187 from ecmwf/feature/test_dynamic_step_native_type
Default native step type is string. It's long if unit is not shown.
2024-01-19 14:30:55 +00:00
Shahram Najm 501fa84cad Testing: Increase coverage 2024-01-19 12:44:37 +00:00
Shahram Najm 39571269c0 Dead code removal 2024-01-19 12:29:21 +00:00
Eugen Betke b8830c337b Default native step type is string. It's long if unit is not shown. 2024-01-19 09:29:16 +00:00
kevstone 3971f225fc Added function call converter 2024-01-19 07:49:21 +00:00
kevstone 6286735388 Added several converters 2024-01-18 19:33:52 +00:00
Shahram Najm 305f636ece Sub hourly: Dynamic native type for step, startStep and endStep for backward compatibility 2024-01-18 17:13:42 +00:00
kevstone 6c76e12ed4 Added classes for parsing literals, macros and return statements 2024-01-18 16:00:44 +00:00
Shahram Najm 92d3ec50eb Testing: GRIB2 local definitions 2024-01-18 15:52:10 +00:00
kevstone ce73909da6 Better for() generation 2024-01-18 14:53:47 +00:00
kevstone 42ad179867 Added compound statement and variable declaration converters 2024-01-18 14:41:38 +00:00
Shahram Najm d35419ec21 Accessors: Dead code removal (METAR message sizing) 2024-01-18 13:38:40 +00:00
kevstone 75dac9fab0 Added compound statement and parser 2024-01-18 10:25:49 +00:00
kevstone 6b8a687d48 Fix parsing bug; set extra debug control for AST parser (as it's noisy) 2024-01-18 08:55:09 +00:00
kevstone abb810a24c Added member function mapping 2024-01-17 17:43:04 +00:00
kevstone 1b71be9191 Added Clang versions of class member functions 2024-01-17 15:07:17 +00:00
Shahram Najm 0f3e710d33 Sub hourly: Native type of step and endStep for backward compatibility (Experimental idea) 2024-01-17 13:50:39 +00:00
Shahram Najm 77a71acf11 ECC-1748: Tools: grib_dump on index file should print the key types 2024-01-17 13:49:36 +00:00
kevstone 4ea4992bb3 Updates to c function object to represent any function (constructor etc) 2024-01-16 18:22:16 +00:00
kevstone 0fe3bb7f1f Tidy up 2024-01-16 16:20:35 +00:00
kevstone 97dd3bbc72 Added grib accessor CPP writer using Jinja 2024-01-16 15:55:46 +00:00
Shahram Najm 3b6e2de6fe Accessors: Evaluate grib_handle_of_accessor once 2024-01-16 13:40:57 +00:00
Shahram Najm 74048199a6 Cleanup 2024-01-15 16:24:11 +00:00
Eugen Betke fb4aeedeb5 Add pack_expression(), is_missing() and get_native_type() 2024-01-15 15:18:35 +00:00
kevstone cb7d4a30fc Added default member converters for AST 2024-01-15 14:39:33 +00:00
kevstone a6b515ed62 Cleaned up class member funcs in default converter 2024-01-15 14:15:14 +00:00
Eugen Betke fb8cd565ac Set correct unit 2024-01-15 12:37:21 +00:00
Shahram Najm 91b5c19105 Remove cerr 2024-01-15 11:36:21 +00:00
kevstone 9f4b5e1c31 Updated funcsig converter to support AST nodes 2024-01-15 11:15:08 +00:00
Shahram Najm bd2b261155 Merge branch 'feature/ECC-1620_sub-hourly' of github.com:ecmwf/eccodes into feature/ECC-1620_sub-hourly 2024-01-15 11:01:44 +00:00