Compare commits

...

4 Commits

Author SHA1 Message Date
7eb6a6f7a8
changelog 2025-03-18 14:37:06 +01:00
bb7886f063
bump fsfwgen version 2025-03-18 14:36:22 +01:00
2d7a2a09b8 Merge pull request 'Added new compile time const event parsing' (#4) from baumgartl/events into main
Reviewed-on: #4
Reviewed-by: Robin Müller <muellerr@irs.uni-stuttgart.de>
2025-03-18 14:34:56 +01:00
76139f3934 added new compile time const event parsing 2025-03-14 13:22:10 +01:00
3 changed files with 18 additions and 3 deletions

View File

@ -8,6 +8,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
# [unreleased] # [unreleased]
# [v0.4.0]
- Update event handling for new `constexpr` templated arguments
# [v0.3.4] # [v0.3.4]
- Hotfixes for pyproject.toml file - Hotfixes for pyproject.toml file

View File

@ -186,9 +186,20 @@ class EventParser(FileParser):
r"static const(?:expr)? Event[\s]*([\w]*)[\s]*=[\s]*" r"static const(?:expr)? Event[\s]*([\w]*)[\s]*=[\s]*"
r"MAKE_EVENT\((0x[0-9a-fA-F]+|[0-9]{1,3}),[\s]*severity::([A-Z]*)\)[\s]*;" r"MAKE_EVENT\((0x[0-9a-fA-F]+|[0-9]{1,3}),[\s]*severity::([A-Z]*)\)[\s]*;"
) )
else: return re.search(regex_string, full_string)
# Non compiletime const version kept for backwards compatibility
regex_string = r"static const(?:expr)? Event\s*([\w]+)\s*=\s*event::makeEvent\(([\w:]+),\s*(0x[0-9a-fA-F]+|[0-9]{1,3})\s*,\s*severity::([A-Z]+)\)\s*;" regex_string = r"static const(?:expr)? Event\s*([\w]+)\s*=\s*event::makeEvent\(([\w:]+),\s*(0x[0-9a-fA-F]+|[0-9]{1,3})\s*,\s*severity::([A-Z]+)\)\s*;"
event_full_match = re.search(regex_string, full_string) event_full_match = re.search(regex_string, full_string)
# Using old, non compiletime const version
if event_full_match:
return event_full_match
# Using compiletime const version
regex_string = r"static const(?:expr)? Event\s*([\w]+)\s*=\s*event::makeEvent<([\w:]+),\s*(0x[0-9a-fA-F]+|[0-9]{1,3})\s*,\s*severity::([A-Z]+)>\(\)\s*;"
event_full_match = re.search(regex_string, full_string)
return event_full_match return event_full_match
def __build_multi_line_event_string(self, first_line: str, moving_window: List[str]) -> str: def __build_multi_line_event_string(self, first_line: str, moving_window: List[str]) -> str:

View File

@ -8,7 +8,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "fsfwgen" name = "fsfwgen"
description = "FSFW Generator Core" description = "FSFW Generator Core"
version = "0.3.4" version = "0.4.0"
license = { text = "Apache-2.0" } license = { text = "Apache-2.0" }
authors = [ authors = [
{name = "Robin Mueller", email = "robin.mueller.m@gmail.com"} {name = "Robin Mueller", email = "robin.mueller.m@gmail.com"}