Automatic Differentiation
 
Loading...
Searching...
No Matches
operator_equal_equal.hpp
Go to the documentation of this file.
1#ifndef STAN_MATH_PRIM_CORE_OPERATOR_EQUAL_EQUAL_HPP
2#define STAN_MATH_PRIM_CORE_OPERATOR_EQUAL_EQUAL_HPP
3
5#include <complex>
6
7namespace stan {
8namespace math {
9
20template <typename U, typename V,
21 typename = require_any_autodiff_scalar_t<U, V>>
22inline bool operator==(const std::complex<U>& x, const std::complex<V>& y) {
23 return x.real() == y.real() && x.imag() == y.imag();
24}
25
36template <typename U, typename V,
38inline bool operator==(const std::complex<U>& x, const V& y) {
39 return x.real() == y && x.imag() == 0;
40}
41
53template <typename U, typename V,
55inline bool operator==(const U& x, const std::complex<V>& y) {
56 return x == y.real() && 0 == y.imag();
57}
58
59} // namespace math
60} // namespace stan
61#endif
require_any_t< is_autodiff_scalar< std::decay_t< Types > >... > require_any_autodiff_scalar_t
Require any of the types satisfy is_autodiff_scalar.
bool operator==(const fvar< T > &x, const fvar< T > &y)
Return true if the specified variables have equal values as defined by ==.
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...