BDE 4.39.x Production Release
Loading...
Searching...
No Matches
bdlar_accessorvtable.h
Go to the documentation of this file.
1/// @file bdlar_accessorvtable.h
2///
3/// The content of this file has been pre-processed for Doxygen.
4///
5
6
7// bdlar_accessorvtable.h -*-C++-*-
8#ifndef INCLUDED_BDLAR_ACCESSORVTABLE
9#define INCLUDED_BDLAR_ACCESSORVTABLE
10
11#include <bsls_ident.h>
12BSLS_IDENT("$Id: $")
13
14/// @defgroup bdlar_accessorvtable bdlar_accessorvtable
15/// @brief Provide ...
16/// @addtogroup bdl
17/// @{
18/// @addtogroup bdlar
19/// @{
20/// @addtogroup bdlar_accessorvtable
21/// @{
22///
23/// <h1> Outline </h1>
24/// * <a href="#bdlar_accessorvtable-purpose"> Purpose</a>
25/// * <a href="#bdlar_accessorvtable-classes"> Classes </a>
26/// * <a href="#bdlar_accessorvtable-description"> Description </a>
27///
28/// # Purpose {#bdlar_accessorvtable-purpose}
29/// Provide ...
30///
31/// # Classes {#bdlar_accessorvtable-classes}
32///
33/// - bdlar::AccessorVtable: ...
34///
35/// # Description {#bdlar_accessorvtable-description}
36/// This component provides ...
37///
38/// @}
39/** @} */
40/** @} */
41
42/** @addtogroup bdl
43 * @{
44 */
45/** @addtogroup bdlar
46 * @{
47 */
48/** @addtogroup bdlar_accessorvtable
49 * @{
50 */
51
52
53namespace bdlar {
54
55// Forward
56class DynamicTypeConstRef;
57class ArrayConstRef;
58class ChoiceConstRef;
59class CustomizedTypeConstRef;
60class EnumConstRef;
61class NullableValueConstRef;
62class SequenceConstRef;
63class SimpleTypeConstRef;
64
65class FieldInfoRef;
66
67 // =====================
68 // struct AccessorVtable
69 // =====================
70
72 // TYPES
73 typedef int AccessDynamic(const void *accessor,
74 const DynamicTypeConstRef& ref);
75 typedef int AccessArray(const void *accessor, const ArrayConstRef& ref);
76 typedef int AccessChoice(const void *accessor, const ChoiceConstRef& ref);
77 typedef int AccessCustomized(const void *accessor,
78 const CustomizedTypeConstRef& ref);
79 typedef int AccessEnum(const void *accessor, const EnumConstRef& ref);
80 typedef int AccessNullable(const void *accessor,
81 const NullableValueConstRef& ref);
82 typedef int AccessSequence(const void *accessor,
83 const SequenceConstRef& ref);
84 typedef int AccessSimple(const void *accessor,
85 const SimpleTypeConstRef& ref);
86
87 // PUBLIC DATA
88 AccessDynamic *d_accessDynamic_fp;
89 AccessArray *d_accessArray_fp;
90 AccessChoice *d_accessChoice_fp;
91 AccessCustomized *d_accessCustomized_fp;
92 AccessEnum *d_accessEnum_fp;
93 AccessNullable *d_accessNullable_fp;
94 AccessSequence *d_accessSequence_fp;
95 AccessSimple *d_accessSimple_fp;
96};
97
98 // =============================
99 // struct AccessorWithInfoVtable
100 // =============================
101
103 // TYPES
104 typedef int AccessDynamic(const void *accessor,
105 const DynamicTypeConstRef& ref,
106 const FieldInfoRef& info);
107 typedef int AccessArray(const void *accessor,
108 const ArrayConstRef& ref,
109 const FieldInfoRef& info);
110 typedef int AccessChoice(const void *accessor,
111 const ChoiceConstRef& ref,
112 const FieldInfoRef& info);
113 typedef int AccessCustomized(const void *accessor,
114 const CustomizedTypeConstRef& ref,
115 const FieldInfoRef& info);
116 typedef int AccessEnum(const void *accessor,
117 const EnumConstRef& ref,
118 const FieldInfoRef& info);
119 typedef int AccessNullable(const void *accessor,
120 const NullableValueConstRef& ref,
121 const FieldInfoRef& info);
122 typedef int AccessSequence(const void *accessor,
123 const SequenceConstRef& ref,
124 const FieldInfoRef& info);
125 typedef int AccessSimple(const void *accessor,
126 const SimpleTypeConstRef& ref,
127 const FieldInfoRef& info);
128
129 // PUBLIC DATA
130 AccessDynamic *d_accessDynamic_fp;
131 AccessArray *d_accessArray_fp;
132 AccessChoice *d_accessChoice_fp;
133 AccessCustomized *d_accessCustomized_fp;
134 AccessEnum *d_accessEnum_fp;
135 AccessNullable *d_accessNullable_fp;
136 AccessSequence *d_accessSequence_fp;
137 AccessSimple *d_accessSimple_fp;
138};
139
140} // close package namespace
141
142
143#endif
144
145// ----------------------------------------------------------------------------
146// Copyright 2024 Bloomberg Finance L.P.
147//
148// Licensed under the Apache License, Version 2.0 (the "License");
149// you may not use this file except in compliance with the License.
150// You may obtain a copy of the License at
151//
152// http://www.apache.org/licenses/LICENSE-2.0
153//
154// Unless required by applicable law or agreed to in writing, software
155// distributed under the License is distributed on an "AS IS" BASIS,
156// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
157// See the License for the specific language governing permissions and
158// limitations under the License.
159// ----------------------------- END-OF-FILE ----------------------------------
160
161/** @} */
162/** @} */
163/** @} */
Definition bdlar_arrayref.h:147
Definition bdlar_choiceref.h:160
Definition bdlar_customizedtyperef.h:136
Definition bdlar_dynamictyperef.h:128
Definition bdlar_enumref.h:138
Definition bdlar_fieldinfo.h:102
Definition bdlar_nullablevalueref.h:147
Definition bdlar_sequenceref.h:205
Definition bdlar_simpletyperef.h:216
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition bdlar_accessorref.h:59
Definition bdlar_accessorvtable.h:71
AccessChoice * d_accessChoice_fp
Definition bdlar_accessorvtable.h:90
AccessSimple * d_accessSimple_fp
Definition bdlar_accessorvtable.h:95
AccessEnum * d_accessEnum_fp
Definition bdlar_accessorvtable.h:92
int AccessEnum(const void *accessor, const EnumConstRef &ref)
Definition bdlar_accessorvtable.h:79
int AccessArray(const void *accessor, const ArrayConstRef &ref)
Definition bdlar_accessorvtable.h:75
int AccessSimple(const void *accessor, const SimpleTypeConstRef &ref)
Definition bdlar_accessorvtable.h:84
int AccessSequence(const void *accessor, const SequenceConstRef &ref)
Definition bdlar_accessorvtable.h:82
AccessSequence * d_accessSequence_fp
Definition bdlar_accessorvtable.h:94
int AccessChoice(const void *accessor, const ChoiceConstRef &ref)
Definition bdlar_accessorvtable.h:76
AccessDynamic * d_accessDynamic_fp
Definition bdlar_accessorvtable.h:88
AccessNullable * d_accessNullable_fp
Definition bdlar_accessorvtable.h:93
int AccessDynamic(const void *accessor, const DynamicTypeConstRef &ref)
Definition bdlar_accessorvtable.h:73
int AccessNullable(const void *accessor, const NullableValueConstRef &ref)
Definition bdlar_accessorvtable.h:80
AccessCustomized * d_accessCustomized_fp
Definition bdlar_accessorvtable.h:91
int AccessCustomized(const void *accessor, const CustomizedTypeConstRef &ref)
Definition bdlar_accessorvtable.h:77
AccessArray * d_accessArray_fp
Definition bdlar_accessorvtable.h:89
Definition bdlar_accessorvtable.h:102
AccessCustomized * d_accessCustomized_fp
Definition bdlar_accessorvtable.h:133
AccessNullable * d_accessNullable_fp
Definition bdlar_accessorvtable.h:135
AccessDynamic * d_accessDynamic_fp
Definition bdlar_accessorvtable.h:130
AccessSimple * d_accessSimple_fp
Definition bdlar_accessorvtable.h:137
int AccessSequence(const void *accessor, const SequenceConstRef &ref, const FieldInfoRef &info)
Definition bdlar_accessorvtable.h:122
int AccessArray(const void *accessor, const ArrayConstRef &ref, const FieldInfoRef &info)
Definition bdlar_accessorvtable.h:107
AccessEnum * d_accessEnum_fp
Definition bdlar_accessorvtable.h:134
int AccessCustomized(const void *accessor, const CustomizedTypeConstRef &ref, const FieldInfoRef &info)
Definition bdlar_accessorvtable.h:113
AccessArray * d_accessArray_fp
Definition bdlar_accessorvtable.h:131
int AccessChoice(const void *accessor, const ChoiceConstRef &ref, const FieldInfoRef &info)
Definition bdlar_accessorvtable.h:110
int AccessDynamic(const void *accessor, const DynamicTypeConstRef &ref, const FieldInfoRef &info)
Definition bdlar_accessorvtable.h:104
int AccessNullable(const void *accessor, const NullableValueConstRef &ref, const FieldInfoRef &info)
Definition bdlar_accessorvtable.h:119
AccessChoice * d_accessChoice_fp
Definition bdlar_accessorvtable.h:132
int AccessSimple(const void *accessor, const SimpleTypeConstRef &ref, const FieldInfoRef &info)
Definition bdlar_accessorvtable.h:125
AccessSequence * d_accessSequence_fp
Definition bdlar_accessorvtable.h:136
int AccessEnum(const void *accessor, const EnumConstRef &ref, const FieldInfoRef &info)
Definition bdlar_accessorvtable.h:116