Shane
98687b592b
Rename OuterJoin to HMaybe and add HList and HNonEmpty
...
I've also updated these to take a `a :: Type` rather than a `t :: (Type -> Type) -> Type`. This is more general and means `HMaybe` can replace both `OuterJoin` and `OuterJoin2` from the old Rel8.
2021-03-05 02:03:17 +00:00
Shane
8fb5051c1d
Stop At leaking into user tables (instead use it only on internal tables) (also rename it to Context)
2021-03-05 01:35:12 +00:00
Oliver Charles
7aeb652e61
GHigherKindedTable work
2021-03-04 21:48:18 +00:00
Ollie Charles
a33fe3d1ca
Restore in_
2021-03-04 14:34:16 +00:00
Ollie Charles
eb6adcc1d3
Restore Rel8.Time
2021-03-04 14:26:57 +00:00
Ollie Charles
3f94330a35
Restore Num (Expr a) and Fractional (Expr a)
2021-03-04 14:15:50 +00:00
Ollie Charles
3235887375
Remove _forAll nonsense
2021-03-04 14:11:32 +00:00
Ollie Charles
4af337b849
Add more binary operators
2021-03-04 14:03:33 +00:00
Ollie Charles
b29db5238b
Drop more deps
2021-03-04 13:28:02 +00:00
Ollie Charles
c8382f8051
Drop semigroupoids dependency
2021-03-04 13:27:32 +00:00
Ollie Charles
57f171e41f
Drop an incorrect comment
2021-03-04 13:18:19 +00:00
Ollie Charles
a1ee92d09d
Documentation
2021-03-04 13:08:54 +00:00
Ollie Charles
972061f6f1
Documentation
2021-03-04 13:03:53 +00:00
Ollie Charles
a02ba0fcfc
Change asc and desc to work on Expr
2021-03-04 12:44:26 +00:00
Ollie Charles
9895de07ba
Add some documentation
2021-03-04 12:41:00 +00:00
Shane
5acb66ba9f
Remove HConstrainTable (Columns a) DBType superclass of HigherKindedTable
2021-03-04 12:01:02 +00:00
Ollie Charles
9515a2aebc
Fix tests
2021-03-04 12:00:04 +00:00
Shane
8a58e45cb1
Remove AnExpr
2021-03-04 11:30:29 +00:00
Ollie Charles
d112076151
Replace ResultType & ExprType with ExprFor and a FD
2021-03-04 10:53:00 +00:00
Shane
3e88e09a31
Slightler safer/more correct listAgg and nonEmptyAgg
2021-03-04 10:37:23 +00:00
Oliver Charles
0deacafaac
Bring back Applicative Aggregate
2021-03-04 09:55:41 +00:00
Shane
61c0ce2c96
Simplify constraints of some and many
2021-03-04 02:06:01 +00:00
Shane
c096d80a4d
Drop columnar arrayAgg (listAgg and nonEmptyAgg are now both tabular)
...
This is a welcome simplification and eases some of the nonsense we were accumulating in `ExprType` and `ResultType`.
In order to make it work though I needed to remove `AnExpr` from the superclasses of `DBType`. However, it was almost entirely unncessary, so this actually simplifies things as well. The only function of `AnExpr` as a superclass of `DBType` seemed to be to say "if you have an a, and a is a `DBType`, then you can do `lit a` to get an `Expr a`". However, this is kind of circular, because `DBType` by itself already gives you `encode` which is basically `lit`. It's easier to just define a columnar `lit` (which I call `monolit`) that's defined directly in terms of `encode`, and to use that in cases where you know you have a single column and going through `Serializable` doesn't quite fit.
2021-03-04 01:17:12 +00:00
Shane
9ad2bab4d0
Remove special case of Compose in Column type family
2021-03-04 00:03:50 +00:00
Shane
fb31f3320d
Introduce AggregateTable class and drop Foldability
2021-03-03 23:35:15 +00:00
Shane
07701436b5
Overhaul aggregations
2021-03-03 10:59:38 +00:00
Ollie Charles
8f79711783
Add Selects constraint synonym
2021-03-03 10:40:32 +00:00
Ollie Charles
8429afbfdd
Revert "Push Table ColumnSchema into TableSchema"
...
This reverts commit cac088f75f
.
2021-03-03 10:36:38 +00:00
Ollie Charles
cac088f75f
Push Table ColumnSchema into TableSchema
...
This simplifies some other types, at the cost of preventing TableSchema
from being a Functor.
2021-03-03 10:29:45 +00:00
Ollie Charles
0cda3816cf
Simplify the type of Projection
2021-03-03 10:14:11 +00:00
Ollie Charles
a3d6997d2b
Add Congruent
2021-03-03 10:11:36 +00:00
Ollie Charles
7848095c79
Add ordering operations
2021-03-03 09:58:58 +00:00
Shane
ac99cd9084
Rename hcontents to htable for consistency with MaybeTable
2021-03-02 20:38:16 +00:00
Shane
8f7e1da473
Better testMaybeTableApplicative
2021-03-02 20:35:50 +00:00
Shane
0e1bccf1f7
Fix exists
2021-03-02 19:28:43 +00:00
Ollie Charles
7391c34d4c
Some more
2021-03-02 17:58:38 +00:00
Ollie Charles
84afca03ea
Stuff
2021-03-02 16:51:33 +00:00
Ollie Charles
8b29542434
Move -Weverything to .cabal
2021-03-02 16:44:23 +00:00
Ollie Charles
3c0b3f9bf7
Implement lit for Array
2021-03-02 16:43:33 +00:00
Ollie Charles
9ccae597b9
Fix CI
2021-03-02 15:07:44 +00:00
Ollie Charles
dd9bfccfdb
Got arrayAggregation working properly
2021-03-02 14:06:56 +00:00
Oliver Charles
a4837c66fe
Formatting
2021-02-28 20:15:44 +00:00
Oliver Charles
b566190419
More polishing
2021-02-28 20:09:46 +00:00
Ollie Charles
e444782554
Noodling
2021-02-28 17:54:50 +00:00
Ollie Charles
0570ab5b02
Back to passing tests
2021-02-28 17:45:19 +00:00
Oliver Charles
9136a8879b
Squashing
2021-02-28 17:13:58 +00:00
Ollie Charles
37107fda14
Test selecting nested pairs
2021-02-28 15:29:18 +00:00
Ollie Charles
fde7186123
Remove some debugging
2021-02-28 15:00:16 +00:00
Ollie Charles
63dd4cf090
Back to working!
2021-02-28 14:59:32 +00:00
Ollie Charles
c0d3cef499
Everything type checks, everything loops
2021-02-28 14:42:48 +00:00