1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-09 23:34:20 +00:00

LV2: Use std::optional in more places

This commit is contained in:
reuk 2025-09-18 16:22:18 +01:00
parent fcf1971122
commit 0ba96f15a0
No known key found for this signature in database
2 changed files with 9 additions and 9 deletions

View file

@ -346,12 +346,12 @@ public:
const auto numerator = parser.parseNumericAtom<float> (atomBeatsPerBar);
const auto denominator = parser.parseNumericAtom<int32_t> (atomBeatUnit);
if (numerator.hasValue() && denominator.hasValue())
if (numerator.has_value() && denominator.has_value())
info->setTimeSignature (TimeSignature { (int) *numerator, (int) *denominator });
info->setBpm (parser.parseNumericAtom<float> (atomBeatsPerMinute));
info->setPpqPosition (parser.parseNumericAtom<double> (atomBeat));
info->setIsPlaying (! approximatelyEqual (parser.parseNumericAtom<float> (atomSpeed).orFallback (0.0f), 0.0f));
info->setIsPlaying (! approximatelyEqual (parser.parseNumericAtom<float> (atomSpeed).value_or (0.0f), 0.0f));
info->setBarCount (parser.parseNumericAtom<int64_t> (atomBar));
if (const auto parsed = parser.parseNumericAtom<int64_t> (atomFrame))
@ -1451,7 +1451,7 @@ LV2_SYMBOL_EXPORT const LV2_Descriptor* lv2_descriptor (uint32_t index)
const auto blockLengthUrid = mapFeature->map (mapFeature->handle, LV2_BUF_SIZE__maxBlockLength);
const auto blockSize = parser.parseNumericOption<int64_t> (findMatchingOption (options, blockLengthUrid));
if (! blockSize.hasValue())
if (! blockSize.has_value())
{
// The host doesn't specify a maximum block size
jassertfalse;

View file

@ -151,13 +151,13 @@ struct NumericAtomParser
template <typename T> struct Tag { LV2_URID urid; };
template <typename Target, typename... Types>
static Optional<Target> tryParse (const LV2_Atom&, const void*)
static std::optional<Target> tryParse (const LV2_Atom&, const void*)
{
return {};
}
template <typename Target, typename Head, typename... Tail>
static Optional<Target> tryParse (const LV2_Atom& atom, const void* data, Tag<Head> head, Tag<Tail>... tail)
static std::optional<Target> tryParse (const LV2_Atom& atom, const void* data, Tag<Head> head, Tag<Tail>... tail)
{
if (atom.type == head.urid && atom.size == sizeof (Head))
return static_cast<Target> (*reinterpret_cast<const Head*> (data));
@ -166,7 +166,7 @@ struct NumericAtomParser
}
template <typename Target>
Optional<Target> parseNumericAtom (const LV2_Atom* atom, const void* data) const
std::optional<Target> parseNumericAtom (const LV2_Atom* atom, const void* data) const
{
if (atom == nullptr)
return {};
@ -181,13 +181,13 @@ struct NumericAtomParser
}
template <typename Target>
Optional<Target> parseNumericAtom (const LV2_Atom* atom) const
std::optional<Target> parseNumericAtom (const LV2_Atom* atom) const
{
return parseNumericAtom<Target> (atom, atom + 1);
}
template <typename Target>
Optional<Target> parseNumericOption (const LV2_Options_Option* option) const
std::optional<Target> parseNumericOption (const LV2_Options_Option* option) const
{
if (option != nullptr)
{
@ -278,7 +278,7 @@ struct PatchSetHelper
const auto parseResult = parser.parseNumericAtom<float> (value);
if (! parseResult.hasValue())
if (! parseResult.has_value())
{
// Didn't understand the type of this atom.
jassertfalse;