Из вашего последнего комментария ясно, что вашим вторым параметром вашей функции является String
, поэтому либо используйте String
напрямую, либо вызовите лямбду, например:
query.whereEqualTo("currentGroup",{
if (isAdmin) email else currentGroup
}()) // see the ()? Alternatively/Preferably you may use run {} here, as it is already an inline function (see below)
Но этоопределенно проще просто использовать if
- else
здесь ... вы не получите ничего от введения лямбда-выражений, которые просто выполняются немедленно:
query.whereEqualTo("currentGroup",
if (isAdmin) email else currentGroup
)
Обратите внимание, что многие функции используют inline
только для того, чтобы преодолеть штрафы за время выполнения, связанные с лямбдами ... так что вы можете прочитать об этом тоже, прежде чем начинать любить лямбды и использовать их повсюду.