struct AnyNode
extension AnyNode : Equatable, Hashable, Identifiable, Node, Sendable
A type-erased Node
-
The stable identity of the entity associated with this instance.
Declaration
Swift
var id: String { get }
-
Undocumented
Declaration
Swift
func cast<T>(_ type: T.Type = T.self) -> T? where T : Node
-
Undocumented
Declaration
Swift
func `is`<T>(_ type: T.Type = T.self) -> Bool where T : Node
-
Returns true if the nodes are equal, false otherwise.
Declaration
Swift
func isEqual(to other: any Node) -> Bool
-
Returns a Boolean value indicating whether two values are equal.
Equality is the inverse of inequality. For any values
a
andb
,a == b
implies thata != b
isfalse
.Declaration
Swift
static func == (lhs: AnyNode, rhs: AnyNode) -> Bool
Parameters
lhs
A value to compare.
rhs
Another value to compare.
-
Hashes the essential components of this value by feeding them into the given hasher.
Implement this method to conform to the
Hashable
protocol. The components used for hashing must be the same as the components compared in your type’s==
operator implementation. Callhasher.combine(_:)
with each of these components.Important
In your implementation of
hash(into:)
, don’t callfinalize()
on thehasher
instance provided, or replace it with a different instance. Doing so may become a compile-time error in the future.Declaration
Swift
func hash(into hasher: inout Hasher)