blob: 58654c145a12f90a06378a5eff46ef99023ccb07 [file] [log] [blame]
Zesstrad59c3892019-11-28 20:53:39 +01001SYNOPSIS
2 mixed * transpose_array(mixed *arr)
MG Mud User88f12472016-06-24 23:31:02 +02003
Zesstrad59c3892019-11-28 20:53:39 +01004BESCHREIBUNG
5 Transponiert das Array <arr>.
MG Mud User88f12472016-06-24 23:31:02 +02006
Zesstrad59c3892019-11-28 20:53:39 +01007 transpose_array( ({ ({1,2,3}) , ({a,b,c}) }) )
8 ergibt: ({ ({1,a}), ({2,b}), ({3,c}) })
MG Mud User88f12472016-06-24 23:31:02 +02009
Zesstrad59c3892019-11-28 20:53:39 +010010 Wird transpose_array() auf eine Alist angewendet, ergibt das ein
11 Array von ({ key, data }) in Paaren. Das ist praktisch, wenn
12 sort_array() oder filter() auf die Alist angewendet werden soll.
MG Mud User88f12472016-06-24 23:31:02 +020013
Zesstrad59c3892019-11-28 20:53:39 +010014BEISPIELE
15 sort_array(transpose_array( ({m_indices(map), m_values(map) }) ),
16 lambda( ({'a, 'b}),
17 ({#'<, ({ #'[, 'a, 0}),
18 ({ #'[, 'b, 0}) }) ));
19 Dieses Gebilde liefert das Mapping 'map' als Array von ({key, data })
20 Paaren, sortiert nach den Keys.
MG Mud User88f12472016-06-24 23:31:02 +020021
Zesstrad59c3892019-11-28 20:53:39 +010022SIEHE AUCH
23 alists(LPC), sort_array(E)