File: applyKeys-doc.m2

package info (click to toggle)
macaulay2 1.25.05%2Bds-2
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 172,152 kB
  • sloc: cpp: 107,824; ansic: 16,193; javascript: 4,189; makefile: 3,899; lisp: 702; yacc: 604; sh: 476; xml: 177; perl: 114; lex: 65; python: 33
file content (40 lines) | stat: -rw-r--r-- 908 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
--- status: DRAFT
--- author(s): L.Gold, Lily Silverstein
--- notes:

doc ///
 Key
  applyKeys
  (applyKeys, HashTable, Function)
  (applyKeys, HashTable, Function, Function)
 Headline
  apply a function to each key in a hash table
 Usage
  applyKeys(H, f)
  applyKeys(H, f, g)
 Inputs
  H:HashTable
  f:Function
   of one argument
  g:Function
   of two arguments, for collision handling
 Outputs
  :HashTable
   obtained by applying {\tt f} to each key in {\tt H}
 Caveat
  It is an error for the function {\tt f} to return two pairs with the same key.
  When this is a possibility, use the function {\tt g} to specify how the two
  pairs should be reconciled.
 Description
  Example
   H = new HashTable from {1 => 10, 2 => 15, 3 => 20}
   applyKeys(H, k -> k + 100)
   applyKeys(H, k -> k//2, max)
   applyKeys(H, k -> k//2, plus)
 SeeAlso
  "hash tables"
  applyPairs
  applyValues
  keys
  scanKeys
///