mirror of
https://github.com/johnkerl/miller.git
synced 2026-08-04 05:23:20 +00:00
todo
This commit is contained in:
parent
b6d35a3429
commit
052810232c
2 changed files with 40 additions and 22 deletions
|
|
@ -32,7 +32,8 @@ type State struct {
|
|||
Oosvars *types.Mlrmap
|
||||
FilterResult bool
|
||||
OutputChannel chan<- *types.RecordAndContext
|
||||
// TODO: stack frames will go into individual statement-block nodes
|
||||
// TODO: stack frames will go into individual statement-block nodes or here?
|
||||
// Needs to be here, for scope-resolution walks
|
||||
}
|
||||
|
||||
func NewEmptyState() *State {
|
||||
|
|
@ -78,6 +79,7 @@ type IExecutable interface {
|
|||
// Also implements IExecutable
|
||||
type StatementBlockNode struct {
|
||||
executables []IExecutable
|
||||
// TODO: localvars -- here or in State's stack-frame
|
||||
}
|
||||
|
||||
// ================================================================
|
||||
|
|
|
|||
58
go/todo.txt
58
go/todo.txt
|
|
@ -1,30 +1,46 @@
|
|||
----------------------------------------------------------------
|
||||
TOP OF LIST:
|
||||
|
||||
* go-try:
|
||||
! try Lvalue/Rvalue coalesce
|
||||
> to make condish work & unhack filter
|
||||
> better error messages in the CST builder anyway, so it's a win
|
||||
|
||||
o while and do-while statements -- not urgent
|
||||
~ for-loops -- require localvars as prereq
|
||||
! need Lvalue/Rvalue coalesce
|
||||
> to make condish work & unhack filter
|
||||
> better error messages in the CST builder anyway, so it's a win
|
||||
* while and do-while statements -- not urgent
|
||||
|
||||
o rename: bulk-edit for b,i,x vs x,i,b cases
|
||||
~ for-loops -- require localvars as prereq
|
||||
> for-k, for-kv, for-knv sooner -- stack-frame special cases
|
||||
> defer triple-for until later
|
||||
|
||||
! filter
|
||||
> bare-boolean LR-1 conflicts wut
|
||||
? erase BNF distinction between BaseLvalue and MlrvalOrFunction
|
||||
- ... i think not
|
||||
> prepend "filter " after last ";" hack -- ? gurk if "...;..." in a string :^/
|
||||
- state machine dquote in/out w walkback; \" handling; good UT
|
||||
! quoted NIDX
|
||||
- how with whitespace regex -- ?
|
||||
! quoted DKVP
|
||||
- what about csvlite-style -- ? needs a --dkvplite ?
|
||||
! --implicit-csv-header
|
||||
! cat -n -g a,b,c
|
||||
o clean up mlr --help to not advertise things it doesn't do yet
|
||||
o ASV? golang csv package parameterizes comma but not crlf :(
|
||||
* stack frames
|
||||
o at cst.State: list.List of StackFrame
|
||||
o for now: StackFrame containing only hash-map from name to mlrval.
|
||||
- default to absent (no hoisting)
|
||||
- no scope-walks needed for for-loops
|
||||
|
||||
* rename: bulk-edit for b,i,x vs x,i,b cases
|
||||
|
||||
! filter
|
||||
> bare-boolean LR-1 conflicts wut
|
||||
? erase BNF distinction between BaseLvalue and MlrvalOrFunction
|
||||
- ... i think not
|
||||
> prepend "filter " after last ";" hack -- ? gurk if "...;..." in a string :^/
|
||||
- state machine dquote in/out w walkback; \" handling; good UT
|
||||
|
||||
! quoted NIDX
|
||||
- how with whitespace regex -- ?
|
||||
! quoted DKVP
|
||||
- what about csvlite-style -- ? needs a --dkvplite ?
|
||||
|
||||
! --implicit-csv-header
|
||||
|
||||
! cat -n -g a,b,c
|
||||
|
||||
* clean up mlr --help to not advertise things it doesn't do yet
|
||||
|
||||
* ASV? golang csv package parameterizes comma but not crlf :(
|
||||
|
||||
----------------------------------------------------------------
|
||||
CATEGORIES:
|
||||
|
||||
* widen verb coverage
|
||||
o count
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue