reversed

OPL keyword for descending sort order

Purpose

OPL keyword to specify the descending order for a set.

context
Model files (.mod)

Syntax

SetTypeModifier: "ordered"
               | "sorted"
               | "reversed"

Description

Specify the reversed keyword before a set to indicate that its number or string elements appear in descending lexicographic order. The default sort order is ascending.

By default, if you do not specify the sorted or reversed keyword, the set is ordered, that is, its elements are considered in their order of creation.

Example

This model

tuple Precedence { int a; string b; };
ordered {int} setInt = { 1,7,2};
ordered setof(Precedence) precedences = { <2,"two">,<1,"One">}; 
sorted {int} setInt2 = { 1,7,2};
sorted setof(Precedence) precedences2 = { <2,"two">,<1,"One">}; 
reversed {int} setInt3 = { 1,7,2};
reversed setof(Precedence) precedences3 = { <2,"two">,<1,"One">}; 
execute
{
writeln(setInt);
writeln(precedences); 
writeln(setInt2);
writeln(precedences2); 
writeln(setInt3);
writeln(precedences3); 
}

gives out


{1 7 2}
{<2 "two"> <1 "One">}
{1 2 7}
{<1 "One"> <2 "two">}
{7 2 1}
{<2 "two"> <1 "One">}