Skip to content

Commit c249662

Browse files
rutikakolkar4og
authored andcommitted
lib/static_reflection_with_serialization: component requirements.
1 parent 7a3c2c8 commit c249662

2 files changed

Lines changed: 102 additions & 1 deletion

File tree

  • docs/modules/baselibs/static_reflection_with_serialization/docs

docs/modules/baselibs/static_reflection_with_serialization/docs/index.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ static_reflection_with_serialization
2727
:hidden:
2828

2929
architecture/index.rst
30-
30+
requirements/index.rst
31+
3132
Abstract
3233
=========
3334

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
..
2+
# *******************************************************************************
3+
# Copyright (c) 2026 Contributors to the Eclipse Foundation
4+
#
5+
# See the NOTICE file(s) distributed with this work for additional
6+
# information regarding copyright ownership.
7+
#
8+
# This program and the accompanying materials are made available under the
9+
# terms of the Apache License Version 2.0 which is available at
10+
# https://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# SPDX-License-Identifier: Apache-2.0
13+
# *******************************************************************************
14+
15+
Requirements
16+
############
17+
18+
.. document:: Static Reflection with Serialization Library Requirements
19+
:id: doc__static_reflect_serial_lib_req
20+
:status: draft
21+
:safety: ASIL_B
22+
:security: YES
23+
:realizes: wp__requirements_comp
24+
:tags: requirements, static_reflection_serialization_library
25+
26+
.. comp_req:: Static Reflection Support
27+
:id: comp_req__static_reflect_serial__reflect
28+
:reqtype: Functional
29+
:security: NO
30+
:safety: ASIL_B
31+
:satisfies: feat_req__baselibs__core_utilities, feat_req__baselibs__safety
32+
:belongs_to: comp__baselibs_static_reflection_with_serial
33+
:status: valid
34+
:tags: baselibs
35+
36+
The library shall provide compile-time reflection-based serialization and deserialization for C++ Data Structures.
37+
38+
.. comp_req:: Generic Visitor Pattern
39+
:id: comp_req__static_reflect_serial__visitor
40+
:reqtype: Interface
41+
:security: NO
42+
:safety: ASIL_B
43+
:satisfies: feat_req__baselibs__core_utilities, feat_req__baselibs__consistent_apis, feat_req__baselibs__safety
44+
:belongs_to: comp__baselibs_static_reflection_with_serial
45+
:status: valid
46+
:tags: baselibs
47+
48+
The library shall provide a visitor pattern for traversal of C++ data structures.
49+
50+
.. comp_req:: Automatic Container Iteration
51+
:id: comp_req__static_reflect_serial__container
52+
:reqtype: Functional
53+
:security: NO
54+
:safety: ASIL_B
55+
:satisfies: feat_req__baselibs__core_utilities, feat_req__baselibs__safety
56+
:belongs_to: comp__baselibs_static_reflection_with_serial
57+
:status: valid
58+
:tags: baselibs
59+
60+
The library shall automatically traverse containers using appropriate iteration.
61+
62+
.. comp_req:: Nested Type Support
63+
:id: comp_req__static_reflect_serial__nested
64+
:reqtype: Functional
65+
:security: NO
66+
:safety: ASIL_B
67+
:satisfies: feat_req__baselibs__core_utilities, feat_req__baselibs__safety
68+
:belongs_to: comp__baselibs_static_reflection_with_serial
69+
:status: valid
70+
:tags: baselibs
71+
72+
The library shall support serialization and visitation of nested data structures.
73+
74+
.. comp_req:: Header-Only Implementation
75+
:id: comp_req__static_reflect_serial__header_only
76+
:reqtype: Non-Functional
77+
:security: NO
78+
:safety: ASIL_B
79+
:satisfies: feat_req__baselibs__core_utilities, feat_req__baselibs__safety
80+
:belongs_to: comp__baselibs_static_reflection_with_serial
81+
:status: valid
82+
:tags: baselibs
83+
84+
The library shall be implemented as a header-only library to enable compile-time optimizations and avoid runtime dependencies.
85+
86+
.. comp_req:: Compile-Time Efficiency
87+
:id: comp_req__static_reflect_serial__compile_eff
88+
:reqtype: Non-Functional
89+
:security: NO
90+
:safety: ASIL_B
91+
:satisfies: feat_req__baselibs__core_utilities, feat_req__baselibs__safety
92+
:belongs_to: comp__baselibs_static_reflection_with_serial
93+
:status: valid
94+
:tags: baselibs
95+
96+
The library shall provide compile-time safety and efficiency of serialization operations with minimal runtime overhead.
97+
98+
.. needextend:: "__static_reflect_serial__" in id
99+
:+tags: baselibs
100+

0 commit comments

Comments
 (0)