Pringley/edb — pull request #1 by Pringley (2014-04-30 01:35:06+00:00)
Title: Implement contiguous Table-based server

The original `edb.server.Server` only supported a simple list of words.

This pull request implements `edb.server.Table`, a wrapper which treats a contiguous list as a two-dimensional array.

Usage:

```python
from edb.server import Table
fields = ['from', 'to', 'bytes'] # ordered fields in each row
searchable = ['from', 'to'] # specify which fields can be searched
addable = ['bytes'] # specify homomorphic fields

table = Table(fields, searchable, addable)

# generate encrypted rows with edb.client.Client
encrypted_row = # ...
table.add(encrypted_row)

# generate search queries with edb.client.Client
name_to_search = # ...
criteria = {'from': client.search_parameters(name_to_search)}
fieldset = ['to', 'bytes'] # list of fields to return
results = table.search(criteria, fieldset)
```