~= -is:exact
About equal operator.
>>> (1.0 + epsilon) ~= (1.0 :: Double)
True
Filter elements based on the presence of a certain attribute that have
the specified value contained in a space separated list.
Map keys to values that provide a ToJSON instance
Recommended in conjunction with the OverloadedStrings
extension.
Set a value using a lens into state
Determine if a thread is blocked in a certain way.
O(1) Compare to see if two trees have the same root key
(~=) is equivalent to
fuzzyEq 1.0e-6.
Shorthand for a test case that asserts equality (with the expected
value on the left-hand side, and the actual value on the right-hand
side).
Performs an inexact match, the first item should be the thing to
match. If the second item is a blank string, that is considered to
match anything. For example:
(TagText "test" ~== TagText "" ) == True
(TagText "test" ~== TagText "test") == True
(TagText "test" ~== TagText "soup") == False
For
TagOpen missing attributes on the right are allowed.
An approximate equality comparison operator.
For real
IEEE types, two values are approximately equal in the
following cases:
- at least half of their significand bits agree;
- both values are less than epsilon;
- both values are NaN.
For complex
IEEE types, two values are approximately equal in
the followiing cases:
- their magnitudes are approximately equal and the angle between
them is less than 32*epsilon;
- both magnitudes are less than epsilon;
- both have a NaN real or imaginary part.
Admitedly, the
32 is a bit of a hack. Future versions of the
library may switch to a more principled test of the angle.
Right value is almost equal to left
Test if two AST elements are equal modulo annotations.
Left value is almost equal to right
x /~= y is equivalent to not (x ~= y).