cuelang.org/go@v0.10.1/pkg/list/sort.cue (about) 1 // Copyright 2019 CUE Authors 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 package list 16 17 // A Comparer specifies whether one value is strictly less than another value. 18 Comparer: { 19 T: _ 20 x: T 21 y: T 22 less: bool // true if x < y 23 } 24 25 // Ascending defines a Comparer to sort comparable values in increasing order. 26 // 27 // Example: 28 // list.Sort(a, list.Ascending) 29 Ascending: { 30 Comparer 31 T: number | string 32 x: T 33 y: T 34 less: x < y 35 } 36 37 // Descending defines a Comparer to sort comparable values in decreasing order. 38 // 39 // Example: 40 // list.Sort(a, list.Descending) 41 Descending: { 42 Comparer 43 T: number | string 44 x: T 45 y: T 46 less: x > y 47 }