The ec2-price-finder Reference Manual

This is the ec2-price-finder Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 16:20:48 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 ec2-price-finder

Quickly find the cheapest EC2 instance that you need across regions

Author

Chaitanya Gupta <>

License

BSD-3-Clause

Dependencies
  • read-csv (system).
  • parse-float (system).
  • hunchentoot (system).
  • spinneret (system).
  • easy-routes (system).
  • lass (system).
  • local-time (system).
  • wu-decimal (system).
Source

ec2-price-finder.asd.

Child Components

3 Files

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


3.1 Lisp


3.1.1 ec2-price-finder/ec2-price-finder.asd

Source

ec2-price-finder.asd.

Parent Component

ec2-price-finder (system).

ASDF Systems

ec2-price-finder.


3.1.2 ec2-price-finder/package.lisp

Source

ec2-price-finder.asd.

Parent Component

ec2-price-finder (system).

Packages

ec2-price-finder.


3.1.3 ec2-price-finder/loader.lisp

Dependency

package.lisp (file).

Source

ec2-price-finder.asd.

Parent Component

ec2-price-finder (system).

Public Interface
Internals

3.1.4 ec2-price-finder/server.lisp

Dependency

loader.lisp (file).

Source

ec2-price-finder.asd.

Parent Component

ec2-price-finder (system).

Internals

3.1.5 ec2-price-finder/main.lisp

Dependency

server.lisp (file).

Source

ec2-price-finder.asd.

Parent Component

ec2-price-finder (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 ec2-price-finder

Source

package.lisp.

Use List

common-lisp.

Public Interface
Internals

5 Definitions

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


5.1 Public Interface


5.1.1 Ordinary functions

Function: build-image ()
Package

ec2-price-finder.

Source

main.lisp.

Function: load-pricing-file (path)
Package

ec2-price-finder.

Source

main.lisp.

Function: start-server (port)
Package

ec2-price-finder.

Source

main.lisp.

Function: stop-server ()
Package

ec2-price-finder.

Source

main.lisp.


5.1.2 Standalone methods

Method: initialize-instance :after ((object instance-def) &rest initargs)
Source

loader.lisp.

Method: print-object ((object document) stream)
Source

loader.lisp.

Method: print-object ((object instance-price) stream)
Source

loader.lisp.

Method: print-object ((object instance-def) stream)
Source

loader.lisp.


5.2 Internals


5.2.1 Constants

Constant: +ec2-price-limit+

Price of an EC2 instance won’t go beyond this - this is needed for MIN comparisons.

Package

ec2-price-finder.

Source

server.lisp.


5.2.2 Special variables

Special Variable: *acceptor*
Package

ec2-price-finder.

Source

main.lisp.

Special Variable: *aws-instance-purposes*
Package

ec2-price-finder.

Source

loader.lisp.

Special Variable: *aws-operating-systems*
Package

ec2-price-finder.

Source

loader.lisp.

Special Variable: *aws-region-groups*
Package

ec2-price-finder.

Source

loader.lisp.

Special Variable: *aws-regions*
Package

ec2-price-finder.

Source

loader.lisp.

Special Variable: *cache-buster*
Package

ec2-price-finder.

Source

server.lisp.

Special Variable: *css-beautifier*
Package

ec2-price-finder.

Source

server.lisp.

Special Variable: *default-region-codes*
Package

ec2-price-finder.

Source

server.lisp.

Special Variable: *document*
Package

ec2-price-finder.

Source

loader.lisp.


5.2.3 Ordinary functions

Function: app-css ()
Package

ec2-price-finder.

Source

server.lisp.

Function: aws-region-belongs-to-group (region group)
Package

ec2-price-finder.

Source

loader.lisp.

Function: aws-region-code (region)
Package

ec2-price-finder.

Source

loader.lisp.

Function: aws-region-code-to-name (code)
Package

ec2-price-finder.

Source

loader.lisp.

Function: aws-region-group-name (region-group)
Package

ec2-price-finder.

Source

loader.lisp.

Function: aws-region-group-prefix (region-group)
Package

ec2-price-finder.

Source

loader.lisp.

Function: aws-region-name (region)
Package

ec2-price-finder.

Source

loader.lisp.

Function: aws-region-name-to-code (name)
Package

ec2-price-finder.

Source

loader.lisp.

Function: aws-region-names (region)
Package

ec2-price-finder.

Source

loader.lisp.

Function: aws-region-short-name (region)
Package

ec2-price-finder.

Source

loader.lisp.

Function: family-for-instance-type (instance-type)
Package

ec2-price-finder.

Source

loader.lisp.

Function: find-aws-region (code)
Package

ec2-price-finder.

Source

loader.lisp.

Function: find-aws-region-group (prefix)
Package

ec2-price-finder.

Source

loader.lisp.

Function: find-cheapest (&key document v-cpu memory operating-system region-codes instance-family)
Package

ec2-price-finder.

Source

loader.lisp.

Function: find-def-for-instance-type (instance-type defs)
Package

ec2-price-finder.

Source

loader.lisp.

Function: find-instances ()
Package

ec2-price-finder.

Source

server.lisp.

Package

ec2-price-finder.

Source

server.lisp.

Function: head-common ()
Package

ec2-price-finder.

Source

server.lisp.

Function: home ()
Package

ec2-price-finder.

Source

server.lisp.

Function: instance-family-groups-from-defs (defs)
Package

ec2-price-finder.

Source

loader.lisp.

Function: lispify-header-name (string &optional package)
Package

ec2-price-finder.

Source

loader.lisp.

Function: main ()
Package

ec2-price-finder.

Source

main.lisp.

Function: not-found ()
Package

ec2-price-finder.

Source

server.lisp.

Function: parse-float-with-junk (string)
Package

ec2-price-finder.

Source

server.lisp.

Function: parse-integer-with-junk (string)
Package

ec2-price-finder.

Source

server.lisp.

Function: parse-memory (string)
Package

ec2-price-finder.

Source

loader.lisp.

Function: parse-memory-with-junk (string)
Package

ec2-price-finder.

Source

loader.lisp.

Function: process-row (row field-names defs)
Package

ec2-price-finder.

Source

loader.lisp.

Function: read-pricing-file (path &key progress-fn)
Package

ec2-price-finder.

Source

loader.lisp.

Function: render-find-form (&key document open-sections v-cpu memory operating-system region-codes instance-family more-specs price-per autofocus)
Package

ec2-price-finder.

Source

server.lisp.

Function: render-instance-type-form (&key document)
Package

ec2-price-finder.

Source

server.lisp.

Function: render-memory (memory)
Package

ec2-price-finder.

Source

server.lisp.

Function: show-instance (instance-type)
Package

ec2-price-finder.

Source

server.lisp.

Function: string-or-nil (string)
Package

ec2-price-finder.

Source

server.lisp.


5.2.4 Generic functions

Generic Reader: defs (object)
Package

ec2-price-finder.

Methods
Reader Method: defs ((document document))

automatically generated reader method

Source

loader.lisp.

Target Slot

defs.

Generic Reader: ecu (object)
Package

ec2-price-finder.

Methods
Reader Method: ecu ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

ecu.

Generic Reader: hourly (object)
Package

ec2-price-finder.

Methods
Reader Method: hourly ((instance-price instance-price))

automatically generated reader method

Source

loader.lisp.

Target Slot

hourly.

Generic Reader: instance-family (object)
Package

ec2-price-finder.

Methods
Reader Method: instance-family ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

instance-family.

Generic Reader: instance-family-groups (object)
Package

ec2-price-finder.

Methods
Reader Method: instance-family-groups ((document document))

automatically generated reader method

Source

loader.lisp.

Target Slot

instance-family-groups.

Generic Reader: instance-purpose (object)
Package

ec2-price-finder.

Methods
Reader Method: instance-purpose ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

purpose.

Generic Reader: instance-type (object)
Package

ec2-price-finder.

Methods
Reader Method: instance-type ((instance-price instance-price))

automatically generated reader method

Source

loader.lisp.

Target Slot

instance-type.

Reader Method: instance-type ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

instance-type.

Generic Reader: memory (object)
Package

ec2-price-finder.

Methods
Reader Method: memory ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

memory.

Generic Reader: network-performance (object)
Package

ec2-price-finder.

Methods
Reader Method: network-performance ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

network-performance.

Generic Reader: operating-system (object)
Package

ec2-price-finder.

Methods
Reader Method: operating-system ((instance-price instance-price))

automatically generated reader method

Source

loader.lisp.

Target Slot

operating-system.

Generic Reader: physical-processor (object)
Package

ec2-price-finder.

Methods
Reader Method: physical-processor ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

physical-processor.

Generic Reader: prices (object)
Package

ec2-price-finder.

Methods
Reader Method: prices ((document document))

automatically generated reader method

Source

loader.lisp.

Target Slot

prices.

Generic Reader: publication-date (object)
Package

ec2-price-finder.

Methods
Reader Method: publication-date ((document document))

automatically generated reader method

Source

loader.lisp.

Target Slot

publication-date.

Generic Reader: region-code (object)
Package

ec2-price-finder.

Methods
Reader Method: region-code ((instance-price instance-price))

automatically generated reader method

Source

loader.lisp.

Target Slot

region-code.

Generic Reader: storage (object)
Package

ec2-price-finder.

Methods
Reader Method: storage ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

storage.

Generic Reader: v-cpu (object)
Package

ec2-price-finder.

Methods
Reader Method: v-cpu ((instance-def instance-def))

automatically generated reader method

Source

loader.lisp.

Target Slot

v-cpu.

Generic Reader: version (object)
Package

ec2-price-finder.

Methods
Reader Method: version ((document document))

automatically generated reader method

Source

loader.lisp.

Target Slot

version.


5.2.5 Classes

Class: document
Package

ec2-price-finder.

Source

loader.lisp.

Direct methods
Direct slots
Slot: publication-date
Initargs

:publication-date

Readers

publication-date.

Writers

This slot is read-only.

Slot: version
Initargs

:version

Readers

version.

Writers

This slot is read-only.

Slot: defs
Initargs

:defs

Readers

defs.

Writers

This slot is read-only.

Slot: prices
Initargs

:prices

Readers

prices.

Writers

This slot is read-only.

Slot: instance-family-groups
Initargs

:instance-family-groups

Readers

instance-family-groups.

Writers

This slot is read-only.

Class: instance-def
Package

ec2-price-finder.

Source

loader.lisp.

Direct methods
Direct slots
Slot: instance-type
Initargs

:instance-type

Readers

instance-type.

Writers

This slot is read-only.

Slot: instance-family
Readers

instance-family.

Writers

This slot is read-only.

Slot: purpose
Initargs

:purpose

Readers

instance-purpose.

Writers

This slot is read-only.

Slot: v-cpu
Initargs

:v-cpu

Readers

v-cpu.

Writers

This slot is read-only.

Slot: ecu
Initargs

:ecu

Readers

ecu.

Writers

This slot is read-only.

Slot: memory
Initargs

:memory

Readers

memory.

Writers

This slot is read-only.

Slot: storage
Initargs

:storage

Readers

storage.

Writers

This slot is read-only.

Slot: network-performance
Initargs

:network-performance

Readers

network-performance.

Writers

This slot is read-only.

Slot: physical-processor
Initargs

:physical-processor

Readers

physical-processor.

Writers

This slot is read-only.

Class: instance-price
Package

ec2-price-finder.

Source

loader.lisp.

Direct methods
Direct slots
Slot: instance-type
Initargs

:instance-type

Readers

instance-type.

Writers

This slot is read-only.

Slot: region-code
Initargs

:region-code

Readers

region-code.

Writers

This slot is read-only.

Slot: operating-system
Initargs

:operating-system

Readers

operating-system.

Writers

This slot is read-only.

Slot: hourly
Initargs

:hourly

Readers

hourly.

Writers

This slot is read-only.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   A   B   D   E   F   G   H   I   L   M   N   O   P   R   S   V  
Index Entry  Section

A
app-css: Private ordinary functions
aws-region-belongs-to-group: Private ordinary functions
aws-region-code: Private ordinary functions
aws-region-code-to-name: Private ordinary functions
aws-region-group-name: Private ordinary functions
aws-region-group-prefix: Private ordinary functions
aws-region-name: Private ordinary functions
aws-region-name-to-code: Private ordinary functions
aws-region-names: Private ordinary functions
aws-region-short-name: Private ordinary functions

B
build-image: Public ordinary functions

D
defs: Private generic functions
defs: Private generic functions

E
ecu: Private generic functions
ecu: Private generic functions

F
family-for-instance-type: Private ordinary functions
find-aws-region: Private ordinary functions
find-aws-region-group: Private ordinary functions
find-cheapest: Private ordinary functions
find-def-for-instance-type: Private ordinary functions
find-instances: Private ordinary functions
footer: Private ordinary functions
Function, app-css: Private ordinary functions
Function, aws-region-belongs-to-group: Private ordinary functions
Function, aws-region-code: Private ordinary functions
Function, aws-region-code-to-name: Private ordinary functions
Function, aws-region-group-name: Private ordinary functions
Function, aws-region-group-prefix: Private ordinary functions
Function, aws-region-name: Private ordinary functions
Function, aws-region-name-to-code: Private ordinary functions
Function, aws-region-names: Private ordinary functions
Function, aws-region-short-name: Private ordinary functions
Function, build-image: Public ordinary functions
Function, family-for-instance-type: Private ordinary functions
Function, find-aws-region: Private ordinary functions
Function, find-aws-region-group: Private ordinary functions
Function, find-cheapest: Private ordinary functions
Function, find-def-for-instance-type: Private ordinary functions
Function, find-instances: Private ordinary functions
Function, footer: Private ordinary functions
Function, head-common: Private ordinary functions
Function, home: Private ordinary functions
Function, instance-family-groups-from-defs: Private ordinary functions
Function, lispify-header-name: Private ordinary functions
Function, load-pricing-file: Public ordinary functions
Function, main: Private ordinary functions
Function, not-found: Private ordinary functions
Function, parse-float-with-junk: Private ordinary functions
Function, parse-integer-with-junk: Private ordinary functions
Function, parse-memory: Private ordinary functions
Function, parse-memory-with-junk: Private ordinary functions
Function, process-row: Private ordinary functions
Function, read-pricing-file: Private ordinary functions
Function, render-find-form: Private ordinary functions
Function, render-instance-type-form: Private ordinary functions
Function, render-memory: Private ordinary functions
Function, show-instance: Private ordinary functions
Function, start-server: Public ordinary functions
Function, stop-server: Public ordinary functions
Function, string-or-nil: Private ordinary functions

G
Generic Function, defs: Private generic functions
Generic Function, ecu: Private generic functions
Generic Function, hourly: Private generic functions
Generic Function, instance-family: Private generic functions
Generic Function, instance-family-groups: Private generic functions
Generic Function, instance-purpose: Private generic functions
Generic Function, instance-type: Private generic functions
Generic Function, memory: Private generic functions
Generic Function, network-performance: Private generic functions
Generic Function, operating-system: Private generic functions
Generic Function, physical-processor: Private generic functions
Generic Function, prices: Private generic functions
Generic Function, publication-date: Private generic functions
Generic Function, region-code: Private generic functions
Generic Function, storage: Private generic functions
Generic Function, v-cpu: Private generic functions
Generic Function, version: Private generic functions

H
head-common: Private ordinary functions
home: Private ordinary functions
hourly: Private generic functions
hourly: Private generic functions

I
initialize-instance: Public standalone methods
instance-family: Private generic functions
instance-family: Private generic functions
instance-family-groups: Private generic functions
instance-family-groups: Private generic functions
instance-family-groups-from-defs: Private ordinary functions
instance-purpose: Private generic functions
instance-purpose: Private generic functions
instance-type: Private generic functions
instance-type: Private generic functions
instance-type: Private generic functions

L
lispify-header-name: Private ordinary functions
load-pricing-file: Public ordinary functions

M
main: Private ordinary functions
memory: Private generic functions
memory: Private generic functions
Method, defs: Private generic functions
Method, ecu: Private generic functions
Method, hourly: Private generic functions
Method, initialize-instance: Public standalone methods
Method, instance-family: Private generic functions
Method, instance-family-groups: Private generic functions
Method, instance-purpose: Private generic functions
Method, instance-type: Private generic functions
Method, instance-type: Private generic functions
Method, memory: Private generic functions
Method, network-performance: Private generic functions
Method, operating-system: Private generic functions
Method, physical-processor: Private generic functions
Method, prices: Private generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, publication-date: Private generic functions
Method, region-code: Private generic functions
Method, storage: Private generic functions
Method, v-cpu: Private generic functions
Method, version: Private generic functions

N
network-performance: Private generic functions
network-performance: Private generic functions
not-found: Private ordinary functions

O
operating-system: Private generic functions
operating-system: Private generic functions

P
parse-float-with-junk: Private ordinary functions
parse-integer-with-junk: Private ordinary functions
parse-memory: Private ordinary functions
parse-memory-with-junk: Private ordinary functions
physical-processor: Private generic functions
physical-processor: Private generic functions
prices: Private generic functions
prices: Private generic functions
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
process-row: Private ordinary functions
publication-date: Private generic functions
publication-date: Private generic functions

R
read-pricing-file: Private ordinary functions
region-code: Private generic functions
region-code: Private generic functions
render-find-form: Private ordinary functions
render-instance-type-form: Private ordinary functions
render-memory: Private ordinary functions

S
show-instance: Private ordinary functions
start-server: Public ordinary functions
stop-server: Public ordinary functions
storage: Private generic functions
storage: Private generic functions
string-or-nil: Private ordinary functions

V
v-cpu: Private generic functions
v-cpu: Private generic functions
version: Private generic functions
version: Private generic functions


A.3 Variables

Jump to:   *   +  
C   D   E   H   I   M   N   O   P   R   S   V  
Index Entry  Section

*
*acceptor*: Private special variables
*aws-instance-purposes*: Private special variables
*aws-operating-systems*: Private special variables
*aws-region-groups*: Private special variables
*aws-regions*: Private special variables
*cache-buster*: Private special variables
*css-beautifier*: Private special variables
*default-region-codes*: Private special variables
*document*: Private special variables

+
+ec2-price-limit+: Private constants

C
Constant, +ec2-price-limit+: Private constants

D
defs: Private classes

E
ecu: Private classes

H
hourly: Private classes

I
instance-family: Private classes
instance-family-groups: Private classes
instance-type: Private classes
instance-type: Private classes

M
memory: Private classes

N
network-performance: Private classes

O
operating-system: Private classes

P
physical-processor: Private classes
prices: Private classes
publication-date: Private classes
purpose: Private classes

R
region-code: Private classes

S
Slot, defs: Private classes
Slot, ecu: Private classes
Slot, hourly: Private classes
Slot, instance-family: Private classes
Slot, instance-family-groups: Private classes
Slot, instance-type: Private classes
Slot, instance-type: Private classes
Slot, memory: Private classes
Slot, network-performance: Private classes
Slot, operating-system: Private classes
Slot, physical-processor: Private classes
Slot, prices: Private classes
Slot, publication-date: Private classes
Slot, purpose: Private classes
Slot, region-code: Private classes
Slot, storage: Private classes
Slot, v-cpu: Private classes
Slot, version: Private classes
Special Variable, *acceptor*: Private special variables
Special Variable, *aws-instance-purposes*: Private special variables
Special Variable, *aws-operating-systems*: Private special variables
Special Variable, *aws-region-groups*: Private special variables
Special Variable, *aws-regions*: Private special variables
Special Variable, *cache-buster*: Private special variables
Special Variable, *css-beautifier*: Private special variables
Special Variable, *default-region-codes*: Private special variables
Special Variable, *document*: Private special variables
storage: Private classes

V
v-cpu: Private classes
version: Private classes