Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Use between operator for numeric property range constraints instead of the relational operators. |
---|---|
Timelines: | family | ancestors | descendants | both | dev |
Files: | files | file ages | folders |
SHA1: |
0caa6b62ab52d3f7c49c038f2c966ee2 |
User & Date: | mvnathan 2014-09-18 21:13:18.262 |
Context
2014-09-19
| ||
00:33 | Added a helper class to ease database Morgification and verification. check-in: 5013209038 user: mvnathan tags: dev | |
2014-09-18
| ||
21:13 | Use between operator for numeric property range constraints instead of the relational operators. check-in: 0caa6b62ab user: mvnathan tags: dev | |
21:07 | Updated morglib.database documentation. check-in: f2db928450 user: mvnathan tags: dev | |
Changes
Changes to py/morglib/database.py.
︙ | ︙ | |||
626 627 628 629 630 631 632 | "more than one .. in " + "numeric column's range spec") try: ctor = int if (column_type == 'integer') else float bounds = map(lambda v: ctor(v), bounds) except Exception, e: raise property_error(column_name, column_type, range_spec, e) | | | < | 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 | "more than one .. in " + "numeric column's range spec") try: ctor = int if (column_type == 'integer') else float bounds = map(lambda v: ctor(v), bounds) except Exception, e: raise property_error(column_name, column_type, range_spec, e) return ('check ({} between {} and {})'. format(column_name, min(bounds), max(bounds))) # Assume we're dealing with discrete values if (column_type == 'text'): fmt = lambda v: "'{}'".format(v) elif (column_type == 'integer'): fmt = lambda v: '{}'.format(int(v)) else: |
︙ | ︙ |
Changes to wiki/todo.wiki.
︙ | ︙ | |||
15 16 17 18 19 20 21 22 23 24 | * Create <tt>morg</tt> table on database init. * Create <tt>task</tt> table on database init. * Create <tt>property</tt> table on database init. * Add default properties dict. * Create <tt>property_NNN</tt> tables on database init. * Implement sanity check on database initialization. * Update database constructor doc string. <h2>PENDING</h2> | > < | 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | * Create <tt>morg</tt> table on database init. * Create <tt>task</tt> table on database init. * Create <tt>property</tt> table on database init. * Add default properties dict. * Create <tt>property_NNN</tt> tables on database init. * Implement sanity check on database initialization. * Update database constructor doc string. * Use the BETWEEN operator in property range constraints. <h2>PENDING</h2> * Implement a watermark class to ease verification and "Morgification." * The watermark table should be created and populated in a transaction. * Pass database to all commands' <tt>__call__</tt> method. * Implement <tt>new</tt> command. |