; docformat = 'rst' ;+ ; Wrapper to create an MGcoSet. ; ; :Examples: ; Try the main-level example program at the end of this file:: ; ; IDL> .run mg_set ; ; This runs:: ; ; IDL> s1 = mg_set(['Colorado', 'Washington', 'Utah']) ; IDL> s2 = mg_set(['Washington', 'Nevada']) ; IDL> print, s1, format='(%" %s")' ; Colorado ; Utah ; Washington ; IDL> print, s2, format='(%" %s")' ; Nevada ; Washington ; IDL> print, s1 + s2, format='(%" %s")' ; Nevada ; Colorado ; Utah ; Washington ; IDL> print, s1 - s2, format='(%" %s")' ; Colorado ; Utah ; IDL> print, s1 or s2, format='(%" %s")' ; Nevada ; Colorado ; Utah ; Washington ; IDL> print, s1 and s2, format='(%" %s")' ; Washington ; IDL> print, s1['Colorado'] ; 1 ; IDL> print, s1['Nevada'] ; 0 ; ; :Returns: ; MGcoSet object ; ; :Params: ; elements : in, optional, type=any ; scalar or array of original value(s) of the set ;- function mg_set, elements compile_opt strictarr arraylist = obj_new('MGcoSet', elements) return, arraylist end ; main-level example program s1 = mg_set(['Colorado', 'Washington', 'Utah']) s2 = mg_set(['Washington', 'Nevada']) print, 'Set1:' print, s1, format='(%" %s")' print print, 'Set2:' print, s2, format='(%" %s")' print print, 'Set1 + Set2:' print, s1 + s2, format='(%" %s")' print print, 'Set1 - Set2:' print, s1 - s2, format='(%" %s")' print print, 'Set1 OR Set2:' print, s1 or s2, format='(%" %s")' print print, 'Set1 AND Set2:' print, s1 and s2, format='(%" %s")' print print, 'Set1[''Colorado'']:' print, s1['Colorado'] print print, 'Set1[''Nevada'']:' print, s1['Nevada'] print end