@@ -131,41 +131,32 @@ namespace Nui
131
131
HtmlElem htmlElement_;
132
132
};
133
133
// ----------------------------------------------------------------------------------------------
134
-
135
- #ifdef __cpp_lib_constexpr_vector
136
- # define HTML_ELEMENT_CONSTEXPR constexpr
137
- #else
138
- # define HTML_ELEMENT_CONSTEXPR
139
- #endif
140
-
141
134
class HtmlElement
142
135
{
143
136
public:
144
137
friend class DomElement ;
145
138
146
- HTML_ELEMENT_CONSTEXPR HtmlElement (HtmlElement const &) = default;
147
- HTML_ELEMENT_CONSTEXPR HtmlElement (HtmlElement&&) = default;
139
+ HtmlElement (HtmlElement const &) = default ;
140
+ HtmlElement (HtmlElement&&) = default ;
148
141
virtual ~HtmlElement () = default ;
149
- HTML_ELEMENT_CONSTEXPR
150
142
HtmlElement (char const * name, HtmlElementBridge const * bridge, std::vector<Attribute> const & attributes)
151
143
: name_{name}
152
144
, bridge_{bridge}
153
145
, attributes_{attributes}
154
146
{}
155
- HTML_ELEMENT_CONSTEXPR
156
147
HtmlElement (char const * name, HtmlElementBridge const * bridge, std::vector<Attribute>&& attributes)
157
148
: name_{name}
158
149
, bridge_{bridge}
159
150
, attributes_{std::move (attributes)}
160
151
{}
161
152
template <typename ... T>
162
- HTML_ELEMENT_CONSTEXPR HtmlElement (char const * name, HtmlElementBridge const * bridge, T&&... attributes)
153
+ HtmlElement (char const * name, HtmlElementBridge const * bridge, T&&... attributes)
163
154
: name_{name}
164
155
, bridge_{bridge}
165
156
, attributes_{std::forward<T>(attributes)...}
166
157
{}
167
158
168
- HTML_ELEMENT_CONSTEXPR HtmlElement clone () const
159
+ HtmlElement clone () const
169
160
{
170
161
return {name_, bridge_, attributes_};
171
162
}
@@ -345,9 +336,9 @@ namespace Nui
345
336
// Children functions:
346
337
template <typename ... ElementT>
347
338
requires requires (ElementT&&... elements) {
348
- std::vector<std::function<std::shared_ptr<Dom::Element>(Dom::Element&, Renderer const &)>>{
349
- std::forward<ElementT>(elements)...};
350
- }
339
+ std::vector<std::function<std::shared_ptr<Dom::Element>(Dom::Element&, Renderer const &)>>{
340
+ std::forward<ElementT>(elements)...};
341
+ }
351
342
auto operator ()(ElementT&&... elements) &&
352
343
{
353
344
return std::function<std::shared_ptr<Dom::Element>(Dom::Element&, Renderer const &)>{
@@ -356,7 +347,7 @@ namespace Nui
356
347
std::vector<std::function<std::shared_ptr<Dom::Element>(Dom::Element&, Renderer const &)>>{
357
348
std::forward<ElementT>(elements)...}}};
358
349
359
- // Unknown Linkage BUG in clang 16 :(
350
+ // Unknown Linkage BUG in wasm-ld :(
360
351
// return
361
352
// [self = this->clone(),
362
353
// children = std::vector<std::function<std::shared_ptr<Dom::Element>(Dom::Element&, Renderer
@@ -374,7 +365,7 @@ namespace Nui
374
365
return std::function<std::shared_ptr<Dom::Element>(Dom::Element&, Renderer const &)>{
375
366
TrivialRenderer<HtmlElement>{this ->clone ()}};
376
367
377
- // Unknown Linkage BUG in clang 16 :(
368
+ // Unknown Linkage BUG in wasm-ld :(
378
369
// return [self = this->clone()](auto& parentElement, Renderer const& gen) {
379
370
// return renderElement(gen, parentElement, self);
380
371
// };
0 commit comments