Lines Matching full:variants
12 // keep track of the different generated variants throughout a reduction pass in
49 /// If we haven't explored any variants from this node, we will create N
50 /// variants, N is the length of `ranges` if N > 1. Otherwise, we will split the
51 /// max element in `ranges` and create 2 new variants for each call.
61 // produce variants with range {{1, 3}} and {{4, 9}}. in generateNewVariants()
62 if (variants.empty() && getRanges().size() > 1) { in generateNewVariants()
66 variants.push_back(createNewNode(subRanges)); in generateNewVariants()
72 // At here, we have created the type of variants mentioned above. We would in generateNewVariants()
73 // like to split the max range into 2 to create 2 new variants. Continue on in generateNewVariants()
75 // create two variants with range {{1, 3}, {4, 6}} and {{1, 3}, {6, 9}}. The in generateNewVariants()
92 variants.push_back(createNewNode(subRanges)); in generateNewVariants()
94 variants.push_back(createNewNode(subRanges)); in generateNewVariants()
122 // no new successful variants can be created at that level. in getNeighbors()
126 // The parent node created several variants and they may be waiting for in getNeighbors()
149 // None of these variants is interesting, let the parent node to generate in getNeighbors()
150 // more variants. in getNeighbors()