Lines Matching refs:Caser
200 friend Caser<T> Switch(const Arg<T>&);
207 SANDBOX_EXPORT Caser<T> Switch(const Arg<T>& arg);
210 class SANDBOX_EXPORT Caser {
212 Caser(const Caser<T>& caser) : arg_(caser.arg_), elser_(caser.elser_) {} in Caser() function
213 ~Caser() {} in ~Caser()
216 Caser<T> Case(T value, const ResultExpr& result) const;
222 Caser<T> CasesImpl(const ResultExpr& result, const Values&... values) const;
228 Caser(const Arg<T>& arg, Elser elser) : arg_(arg), elser_(elser) {} in Caser() function
234 friend Caser<U> Switch(const Arg<U>&);
235 DISALLOW_ASSIGN(Caser);
297 SANDBOX_EXPORT Caser<T> Switch(const Arg<T>& arg) { in Switch()
298 return Caser<T>(arg, Elser(nullptr)); in Switch()
302 Caser<T> Caser<T>::Case(T value, const ResultExpr& result) const { in Case()
308 Caser<T> Caser<T>::CasesImpl(const ResultExpr& result, in CasesImpl()
314 return Caser<T>(arg_, elser_.ElseIf(AnyOf((arg_ == values)...), result)); in CasesImpl()
318 ResultExpr Caser<T>::Default(const ResultExpr& result) const { in Default()