Commit Graph

132 Commits

Author SHA1 Message Date
Roy Qu 7593f3fe64 refactor: make qmutex mutable 2024-05-28 19:01:18 +08:00
Roy Qu ebeea19794 - enhancement: support C++ 17 structured binding in stl map containers foreach loop. 2024-05-03 10:39:44 +08:00
Roy Qu 131941801d simplify implementation 2024-05-03 08:48:58 +08:00
Roy Qu c5cd30eb2a fix: compile error 2024-05-03 08:38:00 +08:00
Roy Qu 1eb804ab0e fix: (UB) get shared ptr from raw pointer 2024-05-03 07:50:05 +08:00
Roy Qu 67b2ec1bc7 - fix: Current editor wouldn't get parsed, when it's switched from another editor being parsed.
- enhancement: Support macro in #include preprocessing statements. (Issue #497)
2024-05-02 16:58:01 +08:00
Cyano Hao 8b80e2a77d
remove pre-Qt 5.15 stuff (#405) 2024-04-28 16:46:01 +08:00
Roy Qu 5d1b874bdf fix: ">>" not correctly handled in auto var definition 2024-04-14 09:24:39 +08:00
Roy Qu e3145d680f - fix: Shouldn't consider preceeding '&'/'*' when popping completion suggest list for variable members. 2024-04-13 10:39:55 +08:00
Roy Qu 37c7405311 refactor: openInclude 2024-04-09 19:39:35 +08:00
Roy Qu fd062e2f34 refactor: rename FileIncludes to ParsedFileInfo 2024-04-06 17:45:02 +08:00
Roy Qu 1372ac774f - enhancement: Support "extern template" in parser. 2024-04-01 10:59:01 +08:00
Roy Qu 09a61c4c32 support lambda expression captures. 2024-03-23 09:03:20 +08:00
Roy Qu e5a23b7686 cppparser refactors 2024-03-22 17:54:08 +08:00
Roy Qu d859894105 fix #290 : Auto type induction for expression contains '[]' are not correct. 2024-03-21 16:55:32 +08:00
Roy Qu 7593f99c58 fix #280 : Using aliased functions are not correctly processed. 2024-03-19 21:22:46 +08:00
Roy Qu 9df669ba08 Issue #194 - fix: Function tips contains functions that not in the scope. 2024-03-08 08:30:41 +08:00
Roy Qu 0a11b4b6ea - Enhancement: Issue #213 Expands macro when finding function tips. 2024-03-06 19:35:35 +08:00
Roy Qu 2743e6f682 - fix: Parser: invalidating file may lost class inheritance infos. 2024-02-28 09:17:30 +08:00
Roy Qu 1728e953bf - fix: Parser: invalidating file may break class inheritance infos. 2024-02-27 18:08:38 +08:00
Roy Qu bfd00957eb - Enhancement: Better support for macros. 2023-11-26 15:44:13 +08:00
Roy Qu aa12dcc4d1 - fix: Crash if #include a non-exist header file in the source. 2023-11-05 21:00:52 +08:00
Roy Qu c3352ad661 - refactor: for/catch processing
- fix: Link in the project options dialog / precompiled header pages is not clickable.
2023-10-22 18:33:53 +08:00
Roy Qu 30cabe2faa - enhancement: Parse files that contains C++ 20 'concept' keyword. (No code suggesion for concepts now)
- enhancement: Parse files that contains C++ 20 'requires' keyword.
  - fix: Code suggestions in namespace.
  - enhancement: Code suggestions for namespace alias.
  - fix: Correctly handle statements like 'using xxx::operator()'.
2023-10-22 13:19:03 +08:00
Roy Qu 8fe15dab8a - enhancment: Code suggestion for embedded std::vectors. 2023-10-19 19:32:08 +08:00
Roy Qu 526e73d27a Use QRecursiveMutex instead of QMutex in CppParser 2023-10-10 19:59:39 +08:00
Roy Qu dd5640d334 - enhancement: False branches are displayed as comments. 2023-08-17 13:24:08 +08:00
Roy Qu 6a06b5b3d6 - fix: Dummy struct/enum symbols shouldn't be shown in the completion suggestion.
- enhancement: Support optional enum name.
  - enhancement: Support optional enum type.
  - enhancement: Support simple const expression evaluation for enum values.
  - fix: Accessibilty for inherited members are not correct calculated in multiple inheritance.
  - fix: Can't handle full class name when handle inheritance.
2023-08-07 14:23:57 +08:00
Roy Qu d3a8a57cf5 - fix: Goto definition/declaration may choose wrong symbol is multiple files are opened and symbols have the same name. 2023-07-27 15:44:33 +08:00
Roy Qu 56f03a52d5 - fix: Keyword asm is not correctly parsed. 2023-07-05 09:01:38 +08:00
Roy Qu b571e5f535 - enhancement: Show code completion suggestion after "typedef" and "const". 2023-07-03 09:36:27 +08:00
Roy Qu 9e7d82fc52 work save 2023-06-20 10:58:14 +08:00
Roy Qu 4746d1b63c - enhancement: Code completion for '->' operator on std iterators. 2023-06-08 17:15:55 +08:00
Roy Qu c6fb11d130 work save 2023-05-29 09:34:07 +08:00
Roy Qu d4ccdbcdc2 - fix: lambda expression is not correctly handled. 2023-05-24 19:30:38 +08:00
Roy Qu 586e6a6185 optimization for cpp parser 2023-03-12 23:45:03 +08:00
Roy Qu de406de236 refactor : member accessibility processing in the parser 2023-03-12 18:24:58 +08:00
Roy Qu b246e3d145 refactor check for struct/class/union defines in the parser 2023-03-12 10:50:47 +08:00
Roy Qu 16258cc015 use normal mutex instead of recursivemutex 2023-03-12 10:00:32 +08:00
Roy Qu b220df600b - enhancement: Sort header completion infos by suffix-trimmed filename. 2023-03-11 19:30:56 +08:00
Roy Qu d29ec1ee0f refactor: make most expression evaluation funcs const 2023-03-11 17:32:57 +08:00
Roy Qu fdc04c0d4f fix: wrong type for operator overloading for conversion functions. 2023-03-10 20:50:46 +08:00
Roy Qu fec78d0045 - enhancement: Don't show operator overloading functions in the complete suggestions
- enhancement: Correctly hanlde operator overloading functions like "operator ClassA"
2023-03-10 20:13:52 +08:00
Roy Qu e7013cff1a - fix: Project files that not in the project folder is not correctly handled in makefile.
- enhancement: Improve support for function pointer typedefs.
2023-03-01 11:29:30 +08:00
Roy Qu c1f8489bfd Assert fail on parser in DEBUG mode, when multiparser working at the same time 2023-02-21 22:40:29 +08:00
Roy Qu 25d0f5b782 - fix: Can't parse enum values.
- fix: Can't correctly show enum values in the class browser.
  - fix: Can't correctly create project, if template's encoding setting is not valid.
  - enhancement: Add "embed assembly" template.
2023-02-15 16:24:24 +08:00
Roy Qu 4fc3900796 - enhancement: Improve parsing for operator overloading. 2023-02-06 14:04:38 +08:00
Roy Qu bc1b22ad25 - enhancement: Rename symbols won't remove all breakpoints/bookmarks
- enhancement: Batch replace won't remove all breakpoints/bookmarks
  - enhancement: Execute parameters can be used in debug.
2023-01-12 12:07:22 +08:00
Roy Qu b1ca0bb600 - enhancement: Import FPS (free problem set) files. 2022-12-11 19:47:43 +08:00
Roy Qu bb2532a2ef - change: Default value of option "Editors share one code analyzer" is ON
- change: Default value of option "Auto clear symbols in hidden editors" is OFF
  - minor fix
2022-11-30 09:54:23 +08:00