in ComponentKit/LayoutComponents/OverlayLayoutComponentBuilder.h [27:75]
class __attribute__((__may_alias__)) OverlayLayoutComponentBuilder
: public BuilderBase<OverlayLayoutComponentBuilder, PropsBitmap> {
public:
OverlayLayoutComponentBuilder() = default;
~OverlayLayoutComponentBuilder() = default;
auto &component(NS_RELEASES_ARGUMENT CKComponent *c)
{
constexpr auto componentIsNotSet = !PropBitmap::isSet(PropsBitmap, OverlayLayoutComponentPropId::component);
static_assert(componentIsNotSet, "Property 'component' is already set.");
_component = c;
return reinterpret_cast<OverlayLayoutComponentBuilder<PropsBitmap | OverlayLayoutComponentPropId::component> &>(*this);
}
auto &overlay(NS_RELEASES_ARGUMENT CKComponent *c)
{
constexpr auto overlayIsNotSet = !PropBitmap::isSet(PropsBitmap, OverlayLayoutComponentPropId::overlay);
static_assert(overlayIsNotSet, "Property 'overlay' is already set.");
_overlay = c;
return reinterpret_cast<OverlayLayoutComponentBuilder<PropsBitmap | OverlayLayoutComponentPropId::overlay> &>(*this);
}
private:
friend BuilderBase<OverlayLayoutComponentBuilder, PropsBitmap>;
/**
Creates a new component instance with specified properties.
@note This method must @b not be called more than once on a given component builder instance.
*/
NS_RETURNS_RETAINED auto _build() noexcept -> CKOverlayLayoutComponent *
{
constexpr auto componentIsSet = PropBitmap::isSet(PropsBitmap, OverlayLayoutComponentPropId::component);
static_assert(componentIsSet, "Required property 'component' is not set.");
constexpr auto overlayIsSet = PropBitmap::isSet(PropsBitmap, OverlayLayoutComponentPropId::overlay);
static_assert(overlayIsSet, "Required property 'overlay' is not set.");
if (_component != nil) {
return [[CKOverlayLayoutComponent alloc] initWithComponent:_component overlay:_overlay];
} else {
return nil;
}
}
private:
CKComponent *_component;
CKComponent *_overlay;
};