KeyValue
User's Manual - version: 0.3

KeyValue-0.3 User's Manual

Cassio Neri


Table of Contents

1. Introduction
2. Downloading and installing
2.1. Compiler
2.2. Building tools
2.3. Boost
2.4. Cygwin
2.5. LibreOffice SDK
2.6. Excel SDK
3. Configuring and building
3.1. Using Microsoft Visual Studio 2008 IDE
4. Getting started with KeyValue
5. The KEYVALUE function
6. Key-value patterns
6.1. Key in single
6.2. Keys in vector
6.3. Keys in matrix
6.4. Table
7. Reserved keys
7.1. Processor
7.1.1. Commands
7.2. ProcessNow
7.3. VectorOutput
7.4. Imports
7.5. Export
8. Reserved processors
8.1. Logger
8.2. NumberOfDataSets
8.3. ListOfDataSets
8.4. DeleteDataSets
9. Key resolution and the Default data set
9.1. Importing a value from another key
9.2. Importing all key-value pairs from other data sets
9.3. Importing key-values from Default data set
10. Lexical conversions
11. Key mappings
11.1. Object map
11.2. Flag map
11.3. Partial map
11.4. No map
12. KeyValue's design: The basics
12.1. Basic types
12.2. Values
12.2.1. Hierarchy of types and multi-level implicit conversions
12.3. Keys
12.3.1. Converter type
12.3.2. Map type
12.3.3. Generic keys
12.4. DataSet
12.5. Processors
12.5.1. Commands
12.5.2. Building from a single value
12.6. Exceptions and Messages
13. How to implement the bridge library
13.1. How to implement class Bridge
13.2. How to implement a processor
13.2.1. Implementing a Calculator specialization
13.2.2. Implementing a Builder specialization
13.3. How to implement a key
13.3.1. Mapping methods
13.3.2. Checking methods
14. Using custom smart pointers
14.1. The pointer traits header file
14.1.1. Implementing the template struct value::PtrTraits
14.1.2. Implementing the specialization of value::PtrTraits for void
14.1.3. Implementing the function dynamic_pointer_cast
14.1.4. Defining the macro KEYVALUE_PTR_TRAITS_FILE
14.1.5. Examples of pointer traits header files
14.2. The macro KEYVALUE_PTR_TRAITS_FILE
14.3. Constraints on custom smart pointers
15. Linking with KeyValue
16. The Excel add-in
16.1. The help file
16.2. The menu of commands
Valid HTML 4.01 TransitionalValid CSS!