The string-case Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The string-case Reference Manual

This is the string-case Reference Manual, version 0.0.2, generated automatically by Declt version 2.3 "Robert April" on Wed Mar 14 04:37:20 2018 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

1.1 string-case

Author

Paul Khuong

License

3-clause BSD

Description

string-case is a macro that generates specialised decision trees to dispatch on string equality

Version

0.0.2

Source

string-case.asd (file)

Component

string-case.lisp (file)


Next: , Previous: , Up: Top   [Contents][Index]

2 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

2.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

2.1.1 string-case.asd

Location

string-case.asd

Systems

string-case (system)


Previous: , Up: Lisp files   [Contents][Index]

2.1.2 string-case/string-case.lisp

Parent

string-case (system)

Location

string-case.lisp

Packages

string-case

Exported Definitions

string-case (macro)

Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

3 Packages

Packages are listed by definition order.


Previous: , Up: Packages   [Contents][Index]

3.1 string-case

Source

string-case.lisp (file)

Use List
Exported Definitions

string-case (macro)

Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

4 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

4.1 Exported definitions


Previous: , Up: Exported definitions   [Contents][Index]

4.1.1 Macros

Macro: string-case (STRING &key DEFAULT) &body CASES

(string-case (string &key default) case*)
case ::= string form*
| t form*
Where t is the default case.

Package

string-case

Source

string-case.lisp (file)


Previous: , Up: Definitions   [Contents][Index]

4.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

4.2.1 Special variables

Special Variable: *input-string*

Symbol of the variable holding the input string

Package

string-case

Source

string-case.lisp (file)

Special Variable: *no-match-form*

Form to insert when no match is found.

Package

string-case

Source

string-case.lisp (file)


Previous: , Up: Internal definitions   [Contents][Index]

4.2.2 Functions

Function: all-equal LIST &key KEY TEST
Package

string-case

Source

string-case.lisp (file)

Function: emit-common-checks STRINGS TO-CHECK
Package

string-case

Source

string-case.lisp (file)

Function: emit-string-case CASES INPUT-VAR NO-MATCH
Package

string-case

Source

string-case.lisp (file)

Function: find-best-split STRINGS TO-CHECK

Iterate over all the indices left to check to find which index (and which character) to test for equality with, keeping the ones which result in the most balanced split.

Package

string-case

Source

string-case.lisp (file)

Function: hash-table->list TABLE &key KEEP-KEYS KEEP-VALUES

Saves the keys and/or values in table to a list. As with hash table iterating functions, there is no implicit ordering.

Package

string-case

Source

string-case.lisp (file)

Function: iota N
Package

string-case

Source

string-case.lisp (file)

Function: make-search-tree STRINGS BODIES TO-CHECK
Package

string-case

Source

string-case.lisp (file)

Function: numeric-char= X Y
Package

string-case

Source

string-case.lisp (file)

Function: split LIST &key TEST KEY

Splits input list into sublists of elements
whose elements are all such that (key element)
are all test.
It’s assumed that test and key form an equality class. (This is similar to groupBy)

Package

string-case

Source

string-case.lisp (file)

Function: split-at LIST N

Split list in k lists of n elements (or less for the last list)

Package

string-case

Source

string-case.lisp (file)


Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   F   L   S  
Index Entry  Section

F
File, Lisp, string-case.asd: The string-case<dot>asd file
File, Lisp, string-case/string-case.lisp: The string-case/string-case<dot>lisp file

L
Lisp File, string-case.asd: The string-case<dot>asd file
Lisp File, string-case/string-case.lisp: The string-case/string-case<dot>lisp file

S
string-case.asd: The string-case<dot>asd file
string-case/string-case.lisp: The string-case/string-case<dot>lisp file

Jump to:   F   L   S  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   A   E   F   H   I   M   N   S  
Index Entry  Section

A
all-equal: Internal functions

E
emit-common-checks: Internal functions
emit-string-case: Internal functions

F
find-best-split: Internal functions
Function, all-equal: Internal functions
Function, emit-common-checks: Internal functions
Function, emit-string-case: Internal functions
Function, find-best-split: Internal functions
Function, hash-table->list: Internal functions
Function, iota: Internal functions
Function, make-search-tree: Internal functions
Function, numeric-char=: Internal functions
Function, split: Internal functions
Function, split-at: Internal functions

H
hash-table->list: Internal functions

I
iota: Internal functions

M
Macro, string-case: Exported macros
make-search-tree: Internal functions

N
numeric-char=: Internal functions

S
split: Internal functions
split-at: Internal functions
string-case: Exported macros

Jump to:   A   E   F   H   I   M   N   S  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *  
S  
Index Entry  Section

*
*input-string*: Internal special variables
*no-match-form*: Internal special variables

S
Special Variable, *input-string*: Internal special variables
Special Variable, *no-match-form*: Internal special variables

Jump to:   *  
S  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   P   S  
Index Entry  Section

P
Package, string-case: The string-case package

S
string-case: The string-case system
string-case: The string-case package
System, string-case: The string-case system

Jump to:   P   S