Fixed bug where no parameter function calls were not typechecked and function/struct name collision. Improved regex library to where it can do straight-line regexs
This commit is contained in:
@@ -131,6 +131,15 @@ obj vector<T> (Object) {
|
||||
}
|
||||
return newVec
|
||||
}
|
||||
fun flatten_map<U,V>(func: fun(T,V):vector<U>, extraParam:V):vector<U> {
|
||||
var newVec.construct(): vector<U>
|
||||
for (var i = 0; i < size; i++;) {
|
||||
var to_add = func(data[i], extraParam)
|
||||
for (var j = 0; j < to_add.size; j++;)
|
||||
newVec.addEnd(to_add.get(j))
|
||||
}
|
||||
return newVec
|
||||
}
|
||||
fun filter(func: fun(T):bool):vector<T> {
|
||||
var newVec.construct(): vector<T>
|
||||
for (var i = 0; i < size; i++;)
|
||||
@@ -138,6 +147,13 @@ obj vector<T> (Object) {
|
||||
newVec.addEnd(data[i])
|
||||
return newVec
|
||||
}
|
||||
fun filter<U>(func: fun(T,U):bool, extraParam: U):vector<T> {
|
||||
var newVec.construct(): vector<T>
|
||||
for (var i = 0; i < size; i++;)
|
||||
if (func(data[i], extraParam))
|
||||
newVec.addEnd(data[i])
|
||||
return newVec
|
||||
}
|
||||
fun any_true(func: fun(T):bool):bool {
|
||||
for (var i = 0; i < size; i++;)
|
||||
if (func(data[i]))
|
||||
|
||||
Reference in New Issue
Block a user