rename lenTuple and lenVarargs (#13639)

* rename 'lenTuple' to 'tupleLen'

Rationale:
`lenTuple` is a tuple consisting of lengths (e.g. `(1, 5, 0)`),
`tupleLen` is a length of a tuple (e.g. `tupleLen((1, 5, 0) == 3`)

* rename 'lenVarargs' to 'varargsLen'

The same rationale as a previous commit. Consistency.
This commit is contained in:
Miran 2020-03-12 20:07:02 +01:00 • committed by GitHub
commit 14b2354b7d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 33 additions and 32 deletions

View file

@ -92,40 +92,40 @@ block distinctBase:
doAssert($distinctBase(typeof(b2)) == "string")
doAssert($distinctBase(typeof(c2)) == "int")
block: # lenTuple
doAssert not compiles(lenTuple(int))
block: # tupleLen
doAssert not compiles(tupleLen(int))
type
MyTupleType = (int,float,string)
static: doAssert MyTupleType.lenTuple == 3
static: doAssert MyTupleType.tupleLen == 3
type
MyGenericTuple[T] = (T,int,float)
MyGenericAlias = MyGenericTuple[string]
static: doAssert MyGenericAlias.lenTuple == 3
static: doAssert MyGenericAlias.tupleLen == 3
type
MyGenericTuple2[T,U] = (T,U,string)
MyGenericTuple2Alias[T] = MyGenericTuple2[T,int]
MyGenericTuple2Alias2 = MyGenericTuple2Alias[float]
static: doAssert MyGenericTuple2Alias2.lenTuple == 3
static: doAssert MyGenericTuple2Alias2.tupleLen == 3
static: doAssert (int, float).lenTuple == 2
static: doAssert (1, ).lenTuple == 1
static: doAssert ().lenTuple == 0
static: doAssert (int, float).tupleLen == 2
static: doAssert (1, ).tupleLen == 1
static: doAssert ().tupleLen == 0
let x = (1,2,)
doAssert x.lenTuple == 2
doAssert ().lenTuple == 0
doAssert (1,).lenTuple == 1
doAssert (int,).lenTuple == 1
doAssert type(x).lenTuple == 2
doAssert type(x).default.lenTuple == 2
doAssert x.tupleLen == 2
doAssert ().tupleLen == 0
doAssert (1,).tupleLen == 1
doAssert (int,).tupleLen == 1
doAssert type(x).tupleLen == 2
doAssert type(x).default.tupleLen == 2
type T1 = (int,float)
type T2 = T1
doAssert T2.lenTuple == 2
doAssert T2.tupleLen == 2
block genericParams:
type Foo[T1, T2]=object