summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
AgeCommit message (Collapse)Author
2026-01-17Fix various typos and spelling mistakesSintendo
2025-06-14Source: Remove redundant lambda parameter listsDr. Dystopia
2025-02-21Fix multiple minor warningsJoshua Vandaële
- ExpressionParser.cpp: `-Wmissing-declarations` - AchievementManager.cpp: `-Wsign-compare` - SI.cpp: `-Warray-bounds=` - NetPlayClient.cpp: `-Wdangling-reference`
2025-02-02InputCommon/ExpressionParser: Add compound assignment operators.Jordan Woyak
2025-02-02Merge pull request #13315 from jordan-woyak/func-exp-cleanupAdmiral H. Curtiss
InputCommon/ExpressionParser: Function argument parsing minor cleanup.
2025-02-02Merge pull request #13314 from jordan-woyak/input-expressions-assignment-op-fixAdmiral H. Curtiss
InputCommon: Fix input expression assignment operator behavior.
2025-02-02Merge pull request #13280 from jordan-woyak/input-expressions-highlightingJMC47
InputCommon/DolphinQt: Fix sometimes broken syntax highlighting in IOWindow.
2025-01-28InputCommon/ExpressionParser: Make ValidateArguments access existingJordan Woyak
members instead of passing arguments.
2025-01-28InputCommon/ExpressionParser: Make function argument parsing errorJordan Woyak
message more clear.
2025-01-28InputCommon: Fix input expression assignment operator behavior.Jordan Woyak
2025-01-27Merge pull request #13178 from jordan-woyak/input-expressions-conditional-opJMC47
InputCommon: Add ternary conditional operator to input expressions.
2025-01-19InputCommon/ExpressionParser: Require delimited tokens actually have their ↵Jordan Woyak
terminating delimiter.
2025-01-17ExpressionParser: Remove RemoveInertTokens.Jordan Woyak
2025-01-17InputCommon: Make input expression multiline-comment tokenizing less hacky.Jordan Woyak
2024-12-15Modernize `std::none_of` with rangesmitaclaw
In JitRegCache.cpp, the lambda predicate were replaced by a pointer to member function because ranges algorithms are able to invoke those. In ConvertDialog.cpp, the `std::mem_fn` helper was removed because ranges algorithms are able to handle pointers to member functions as predicates. In BoundingBox.cpp, the lambda predicate was returning the bool element unchanged, so `std::identity` was a better fit.
2024-12-15Modernize `std::all_of` with rangesmitaclaw
In DITSpecification.cpp, MaterialAsset.cpp, and ShaderAsset.cpp, lambda predicates were replaced by pointers to member functions because ranges algorithms are able invoke those. In NetPlayClient.cpp, the non-trivial `NetPlay::Player` elements were being passed by value in `NetPlayClient::DoAllPlayersHaveGame()`. This has been fixed. In WIABlob.cpp, the second example's predicate was returning the `std::optional` by value instead of implicitly converting it to a bool. This has been fixed.
2024-11-07InputCommon: Add ternary conditional operator to input expressions.Jordan Woyak
2024-08-20Remove redundant semicolonsDr. Dystopia
2024-07-28InputCommon: Translate ExpressionParser error messagesJosJuice
The _trans macro marks strings for translation but doesn't do anything at runtime. For that, we need to use a function like GetStringT.
2024-04-12ExpressionParser: Support unary plus operator.Jordan Woyak
2023-12-12Merge pull request #12399 from lioncash/erasingTilka
General: Make use of std::erase_if/std::erase where applicable
2023-12-12ExpressionParser: Avoid some miscellaneous copiesLioncash
Just some trivial copies that can be eliminated or turned into moves.
2023-12-12ExpressionParser: Mark constructors explicit where applicableLioncash
Makes for consistency with the surrounding code.
2023-12-12ExpressionParser: Pass control qualifiers by const referenceLioncash
These aren't necessarily cheap to copy, since a control qualifier will have around 3 std::strings inside of it, so passing by value can churn allocations a little bit.
2023-12-12ExpressionParser: Make use of std::erase_ifLioncash
2023-06-08Prefer static const std::regexget
std::regex has a relatively expensive constructor, and these are unchanging regexes.
2023-02-17InputCommon: Fix memory leak in ExpressionParserPokechu22
We allocate in MakeSuppressor via `return unique_ptr(std::make_unique<...>(...).release(), InvokingDeleter{}`, so it wasn't properly getting freed.
2022-07-25StripSpaces: only strip spacesShawn Hoffman
StripWhitespace maintains old behavior
2021-07-05treewide: convert GPLv2+ license info to SPDX tagsPierre Bourdon
SPDX standardizes how source code conveys its copyright and licensing information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX tags are adopted in many large projects, including things like the Linux kernel.
2021-05-24Expose Control Expression variables to mappings UIFiloppi
-add a way to reset their value (from the mappings UI) -fix "memory leak" where they would never be cleaned, one would be created every time you wrote a character after a "$" -fix ability to create variables with an empty string by just writing "$" (+added error for it) -Add $ operator to the UI operators list, to expose this functionality even more
2021-05-12InputCommon: follow coding conventionsFiloppi
2021-05-12Add mixed comments to input code, make some tooltip clearerFiloppi
2021-04-28Merge pull request #9674 from Filoppi/fix_hotkey_suppresion_crashJordan Woyak
Fix hotkey suppression crash
2021-04-26InputCommon: small hotkey threshold symmetry fixFiloppi
2021-04-26InputCommon: fix hotkey suppression crash if nullptr suppressions were added ↵Filoppi
to the map Update references was failing to update the references, causing input to stay nullptr and crashing. I fixed the case that triggered that, though also added checks against nullptrs for safety. (cherry picked from commit 4bdcf707555a5568eddff957fa3604975ffb6ed7)
2021-04-02Replace uses of cassert with Common/Assert.hPokechu22
2020-10-20ExpressionParser: Add missing <functional> includeLioncash
Unbreaks Windows CMake builds.
2020-09-25ExpressionParser: Improve hotkey suppression logic. Allow activation with ↵Jordan Woyak
simultaneous press of modifier and final input.
2020-09-25ExpressionParser: Replace ScopeGuard with custom deleter unique_ptr.Jordan Woyak
2020-09-25InputCommon: Make hotkeys and input detection aware of Ctrl -> L_Ctrl / ↵Jordan Woyak
R_Ctrl hierarchy.
2020-09-25InputCommon: Clean up modifier ignoring logic.Jordan Woyak
2020-09-25ExpressionParser: Allow duplicate and superset modifier hotkeys to function.Jordan Woyak
2020-09-25ExpressionParser: Suppress inputs when hotkey modifiers are pressed.Jordan Woyak
2020-09-25ExpressionParser: Add Hotkey syntax.Jordan Woyak
2020-03-24Cleanup warnings of -Wmissing-declarationsJun Su
Add static to the functions which is not intentionally export to big scope.
2019-10-25InputCommon: Change "EOF" to "end of expression" in user facing stringJosJuice
This is hopefully clearer, since we're not dealing with a file.
2019-10-20ExpressionParser: Add XOR operator.Jordan Woyak
2019-10-12ExpressionParser: Make Lexer ctor explicit and move argument.Jordan Woyak
2019-10-12ExpressionParser: Add support for /* */ style comments.Jordan Woyak
2019-10-11ExpressionParser: Show error message with expected arguments.Jordan Woyak