public static function createFromStruct(Array $struct, SetMeta $meta = NULL) {
    if (!isset($meta)) $meta = new SetMeta();
    $set = new static(array(), $meta);
    
    foreach ($struct as $field => $list) {
      list($value, $type) = $list;
      $set->set($field, $value, $type);
    }
    
    return $set;
  }