@@ -49,27 +49,33 @@ fn filter_to_nulls(filter: &BooleanArray) -> Option<NullBuffer> {
4949/// Subsequent applications of  aggregate functions that ignore NULLs (most of 
5050/// them) will thus ignore the filtered rows as well. 
5151/// 
52- /// # Output element is `true` 
53- /// * A `true` in the output represents non null output for all values that were both: 
52+ /// # Output element is `true` (and thus output is non-null) 
53+ /// 
54+ /// A `true` in the output represents non null output for all values that were *both*: 
5455/// 
5556/// * `true` in any `opt_filter` (aka values that passed the filter) 
5657/// 
5758/// * `non null` in `input` 
5859/// 
59- /// # Output element is `false` 
60- /// * is false (null) for all values that were false in the filter or null in the input 
60+ /// # Output element is `false` (and thus output is null) 
61+ /// 
62+ /// A `false` in the output represents an input that was *either*: 
63+ /// 
64+ /// * `null` 
65+ /// 
66+ /// * filtered (aka the value was `false` or `null` in the filter) 
6167/// 
6268/// # Example 
6369/// 
6470/// ```text 
6571/// ┌─────┐           ┌─────┐            ┌─────┐ 
66- /// │true │           │NULL │            │NULL  │ 
72+ /// │true │           │NULL │            │false │ 
6773/// │true │    │      │true │            │true │ 
6874/// │true │ ───┼───   │false│  ────────▶ │false│       filtered_nulls 
69- /// │false│    │      │NULL │            │NULL  │ 
70- /// │false│           │true │            │true  │ 
75+ /// │false│    │      │NULL │            │false │ 
76+ /// │false│           │true │            │false │ 
7177/// └─────┘           └─────┘            └─────┘ 
72- /// array           opt_filter           output nulls  
78+ /// array           opt_filter           output 
7379///  .nulls() 
7480/// 
7581/// false = NULL    true  = pass          false = NULL       Meanings 
0 commit comments