Polymorphic Finite Partial functions via Patricia Trees.
| Type | Description | 
| Function or value | Description | ||
| 
                
               | |||
| 
 
 Example
 Evaluates to[("x", 1)]. | |||
| 
                
              
                  Full Usage: 
                   apply fpf aParameters: 
 func<'a, 'b>- 
                      The fpf to be applied.a : 'a- 
                      The supposed fpf's argument.Returns: 'bThefpf's value fora, iffpfis
 actually defined for it. | 
 
 
 Example
 Evaluates to2.Example
 ThrowsSystem.Exception: apply. | ||
| 
                
              
                  Full Usage: 
                   applyd fpf d aParameters: 
 func<'a, 'b>- 
                      The fpf to be applied.d : 'a -> 'b- 
                      The function to apply tox, if it's not an argument of thefpf.a : 'a- 
                      The supposed fpf's argument.Returns: 'bThefpf's value fora, iffpfis
 actually defined for it, otherwise appliesdtox. | 
 
 | ||
| 
                
              
                  Full Usage: 
                   defined fpf aParameters: 
 func<'a, 'b>- 
                      The fpf to check.a : 'a- 
                      The argument to check.Returns: booltrue iffpfis defined fora. | 
 
 Example
 Evaluates totrue.Example
 Evaluates tofalse. | ||
| 
 
 Example
 Evaluates to["x"; "y"]. | |||
| 
                
              
                  Full Usage: 
                   foldl folder state fpfParameters: 
 'State -> 'a -> 'b -> 'State- 
                      The normal F# function to update the state given the input fpf.state : 'State- 
                      The initial state.fpf : func<'a, 'b>- 
                      The input fpfReturns: 'StateThe final state value. | 
                            
                    
 Applies a function to the argument and value of an fpf, threading
 an accumulator argument through the computation. Take the second
 argument, and apply the function to it and the first argument and value
 of the fpf. Then feed this result into the function along with the
 second argument and value and so on. Return the final result. If the
 input function is  It is, for finite partial functions, the same operation that ListModule.Fold is for list. 
 
 Example
 Evaluates to3. | ||
| 
 
 Example
 Evaluates to[(1, 1); (2, 4); (3, 9)]. | |||
| 
 
 Example
 Evaluates to[("x", 1); ("y", 2)]. | |||
| 
                
              
                  Full Usage: 
                   is_undefined _arg1Parameters: 
 func<'a, 'b>- 
                      The function to be checked.Returns: boolTrue if the function is undefined. | In case of equality comparison worries, better use this. 
 
 Example
 Evaluates totrue.Example
 Evaluates tofalse. | ||
| 
                
               | It is, for finite partial functions, the same operation that ListModule.Map is for list. 
 
 Example
 Evaluates toLeaf (..., [("x", 10)]). | ||
| 
 
 Example
 Evaluates to[1; 2]. | |||
| 
                
              
                  Full Usage: 
                   tryapplyd fpf a dParameters: 
 func<'a, 'b>- 
                      The fpf to be applied.a : 'a- 
                      The supposed fpf's argument.d : 'b- 
                      The default value to return in case of failure.Returns: 'bThe fpf's value fora, if fpf is actually defined for it.
 Otherwise, the default valued. | 
 
 Example
 Evaluates to1.Example
 Evaluates to9. | ||
| 
                
              
                  Full Usage: 
                   tryapplyl fpf aParameters: 
 func<'a, 'b list>- 
                      The input fpf to be applied.a : 'a- 
                      The supposed fpf's argument.Returns: 'b listThe fpf's value fora, if fpf is actually defined for it.
 Otherwise, the default value[]. | 
 
 Example
 Evaluates to[1;2;3].Example
 Evaluates to[]. | ||
| 
                
              
                  Full Usage: 
                   undef xParameters: 
 'aReturns: 'b | It is to be the same thing of what Fpf.undefined is in the context of the finite partial functions. 
 
 
 Note
 In a non-functional world you can create a list of values and
 initialize the list signifying nothing: e.g.  In a functional world you can create a list of functions and initialize the list with a function causing an exception given that the items is the list are evaluated as functions. undef is that function which is used to initialize a list to cause an exception if the list is empty when evaluated. Example
 Multiple itemsThrows val int: value: 'T -> int (requires member op_Explicit) -------------------- type int = int32 -------------------- type int<'Measure> = int System.Exception: undefined function.Example
 Evaluates to100. | ||
| 
                
               | 
 
 Example
 Evaluates toLeaf (..., [("y", 2)]).Example
 val input: objEvaluates to true. | ||
| 
 | |||
| 
                
              
                  Full Usage: 
                   valmod a b f xParameters: 
 'a- 
                      The argument to update.b : 'b- 
                      The value to assign to the argument.f : 'a -> 'b- 
                      The F# function to update.x : 'a- 
                      The argument to apply the modified function to.Returns: 'bThe new value, if applied to the updated argument. Otherwise, the value 
 of the original function. | 
                
 Corresponds to the mathematical notation \((a \mapsto b)f\) and it is 
 the same thing of what  
 
 Example
 val id: x: 'T -> 'TEvaluates to 100.Example
 val id: x: 'T -> 'TEvaluates to 2. |