xref: /petsc/include/petsc/private/hashijklkey.h (revision 422617d9fdc200ea07698d13a116ecdb293b8b3b)
1 #ifndef PETSC_HASHIJKLKEY_H
2 #define PETSC_HASHIJKLKEY_H
3 
4 typedef struct _PetscHashIJKLKey {
5   PetscInt i, j, k, l;
6 } PetscHashIJKLKey;
7 
8 #define PetscHashIJKLKeyHash(key) PetscHashCombine(PetscHashCombine(PetscHashInt((key).i), PetscHashInt((key).j)), PetscHashCombine(PetscHashInt((key).k), PetscHashInt((key).l)))
9 
10 #define PetscHashIJKLKeyEqual(k1, k2) ((k1).i == (k2).i && (k1).j == (k2).j && (k1).k == (k2).k && (k1).l == (k2).l)
11 
12 #endif /* PETSC_HASHIJKLKEY_H */
13