mirror of
https://github.com/johnkerl/miller.git
synced 2026-07-27 17:53:57 +00:00
C/Go reg-test iterate
This commit is contained in:
parent
592c0c4d39
commit
c13d32667e
5 changed files with 32 additions and 39 deletions
|
|
@ -2377,4 +2377,4 @@ This is simply a copy of what you should see on running **man mlr** at a command
|
|||
|
||||
|
||||
|
||||
2020-11-15 MILLER(1)
|
||||
2020-11-24 MILLER(1)
|
||||
|
|
|
|||
|
|
@ -2367,4 +2367,4 @@ SEE ALSO
|
|||
|
||||
|
||||
|
||||
2020-11-15 MILLER(1)
|
||||
2020-11-24 MILLER(1)
|
||||
|
|
|
|||
|
|
@ -2,12 +2,12 @@
|
|||
.\" Title: mlr
|
||||
.\" Author: [see the "AUTHOR" section]
|
||||
.\" Generator: ./mkman.rb
|
||||
.\" Date: 2020-11-15
|
||||
.\" Date: 2020-11-24
|
||||
.\" Manual: \ \&
|
||||
.\" Source: \ \&
|
||||
.\" Language: English
|
||||
.\"
|
||||
.TH "MILLER" "1" "2020-11-15" "\ \&" "\ \&"
|
||||
.TH "MILLER" "1" "2020-11-24" "\ \&" "\ \&"
|
||||
.\" -----------------------------------------------------------------
|
||||
.\" * Portability definitions
|
||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
|
|
|||
|
|
@ -21,7 +21,12 @@ rrv ./reg-test/cases/case-c-dsl-triple-for-loops.sh
|
|||
"Continuation statements are split into the final boolean, and the statements before (if any)."
|
||||
|
||||
rrv ./reg-test/cases/case-c-label.sh
|
||||
* needs uniqueness-checker
|
||||
* handles old/new clashes differently from C impl :^/
|
||||
|
||||
================================================================
|
||||
ENV
|
||||
|
||||
rrv ./reg-test/cases/case-c-dsl-functional-tests.sh
|
||||
|
||||
================================================================
|
||||
MULTIPLE ISSUES:
|
||||
|
|
@ -43,18 +48,11 @@ rrv ./reg-test/cases/case-c-multi-character-ixs.sh
|
|||
rrv ./reg-test/cases/case-c-implicit-header-csv-input.sh
|
||||
rrv ./reg-test/cases/case-c-missing-final-lf.sh
|
||||
|
||||
================================================================
|
||||
ENV
|
||||
|
||||
rrv ./reg-test/cases/case-c-dsl-functional-tests.sh
|
||||
|
||||
================================================================
|
||||
PUT -S / -F / -A
|
||||
|
||||
rrv ./reg-test/cases/case-c-dsl-type-inference.sh
|
||||
rrv -C1 ./reg-test/cases/case-c-dsl-for-srec-loops.sh
|
||||
rrv -C1 ./reg-test/cases/case-c-dsl-type-inference.sh
|
||||
rrv ./reg-test/cases/case-c-dsl-pythonic-division.sh
|
||||
|
||||
rrv -C20 ./reg-test/cases/case-c-dsl-local-map-variable-write-read.sh
|
||||
rrv -C20 ./reg-test/cases/case-c-dsl-local-map-variable-write-read.sh
|
||||
|
|
@ -63,6 +61,8 @@ rrv -C20 ./reg-test/cases/case-c-dsl-local-map-variable-write-read.sh
|
|||
================================================================
|
||||
ARRAY/MAP
|
||||
|
||||
rrv ./reg-test/cases/case-c-localvar-unsets.sh
|
||||
|
||||
rrv -C5 ./reg-test/cases/case-c-dsl-for-oosvar-loops.sh
|
||||
rrv ./reg-test/cases/case-c-dsl-mapvar-assignments.sh
|
||||
|
||||
|
|
@ -108,16 +108,6 @@ rrv ./reg-test/cases/case-c-dsl-trailing-commas.sh
|
|||
rrv ./reg-test/cases/case-c-dsl-argpass-typedecl.sh
|
||||
rrv ./reg-test/cases/case-c-dsl-multipart-scripts.sh
|
||||
|
||||
================================================================
|
||||
FORMATTING?
|
||||
|
||||
rrv ./reg-test/cases/case-c-dsl-forbind-typedecl.sh
|
||||
rrv ./reg-test/cases/case-c-dsl-indirect-srec-assignments.sh
|
||||
rrv ./reg-test/cases/case-c-dsl-operator-associativity.sh
|
||||
rrv ./reg-test/cases/case-c-dsl-operator-precedence.sh
|
||||
rrv ./reg-test/cases/case-c-dsl-typed-overlay.sh
|
||||
rrv ./reg-test/cases/case-c-localvar-unsets.sh
|
||||
|
||||
================================================================
|
||||
PARTIALLY IMPLEMENTED:
|
||||
|
||||
|
|
@ -222,19 +212,3 @@ rrv ./reg-test/cases/case-c-step.sh
|
|||
rrv ./reg-test/cases/case-c-top.sh
|
||||
rrv ./reg-test/cases/case-c-uniq.sh
|
||||
rrv ./reg-test/cases/case-c-utf8-bom.sh
|
||||
|
||||
================================================================
|
||||
JUST FORMATTING NOW??
|
||||
|
||||
rrv ./reg-test/cases/case-c-dsl-type-inference.sh
|
||||
rrv -C1 ./reg-test/cases/case-c-dsl-for-srec-loops.sh
|
||||
rrv -C1 ./reg-test/cases/case-c-dsl-type-inference.sh
|
||||
rrv ./reg-test/cases/case-c-dsl-pythonic-division.sh
|
||||
|
||||
rrv -C20 ./reg-test/cases/case-c-dsl-local-map-variable-write-read.sh
|
||||
rrv -C1 ./reg-test/cases/case-c-dsl-local-map-variable-write-read.sh
|
||||
|
||||
================================================================
|
||||
rrv -C20 ./reg-test/cases/case-c-dsl-empty-statements.sh
|
||||
rrv -C1 ./reg-test/cases/case-c-dsl-empty-statements.sh
|
||||
================================================================
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package mappers
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"flag"
|
||||
"fmt"
|
||||
"os"
|
||||
|
|
@ -60,9 +61,13 @@ func mapperLabelParseCLI(
|
|||
|
||||
argi += 1
|
||||
|
||||
mapper, _ := NewMapperLabel(
|
||||
mapper, err := NewMapperLabel(
|
||||
newNames,
|
||||
)
|
||||
if err != nil {
|
||||
fmt.Fprint(os.Stderr, err)
|
||||
return nil
|
||||
}
|
||||
|
||||
*pargi = argi
|
||||
return mapper
|
||||
|
|
@ -95,6 +100,20 @@ type MapperLabel struct {
|
|||
func NewMapperLabel(
|
||||
newNames []string,
|
||||
) (*MapperLabel, error) {
|
||||
uniquenessChecker := make(map[string]bool)
|
||||
for _, newName := range newNames {
|
||||
_, ok := uniquenessChecker[newName]
|
||||
if ok {
|
||||
return nil, errors.New(
|
||||
fmt.Sprintf(
|
||||
"mlr label: labels must be unique; got duplicate \"%s\"\n",
|
||||
newName,
|
||||
),
|
||||
)
|
||||
}
|
||||
uniquenessChecker[newName] = true
|
||||
}
|
||||
|
||||
this := &MapperLabel{
|
||||
newNames: newNames,
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue