- NodeSummary.make
- (node == (T.first_child tree parent)) (*is_left *)
- (node == (T.next_sibling tree parent)) (*is_right *)
- (fc != T.nil) (* has_left *)
- (ns != T.nil) (* has_right *)
- (T.kind tree node) (* kind *)
+ if node == root then
+ NodeSummary.make false false (fc != T.nil) (ns != T.nil) (T.kind tree node)
+ else
+ let is_left = node == T.first_child tree parent in
+ NodeSummary.make
+ is_left
+ (not is_left)
+ (fc != T.nil) (* has_left *)
+ (ns != T.nil) (* has_right *)
+ (T.kind tree node) (* kind *)