master > master: codego - auslagern, erzeugungsmethode verbessert, SyntaxBaum -> Formula

This commit is contained in:
RD
2021-05-14 16:58:27 +02:00
parent d490406892
commit 73b7817dcd
17 changed files with 1105 additions and 647 deletions

View File

@@ -131,7 +131,7 @@ func UnionStrings2(list1 []string, list2 []string) []string {
}
// assumes that listTo contains no duplicates
func UnionStringsTo(listTo *[]string, listFrom []string) {
func UnionStringsInPlace(listTo *[]string, listFrom []string) {
var mark = make(map[string]bool)
for _, item := range listFrom {
mark[item] = true
@@ -149,7 +149,7 @@ func UnionStringsTo(listTo *[]string, listFrom []string) {
func UnionStringsList(lists [][]string) []string {
var list = []string{}
for _, list_ := range lists {
UnionStringsTo(&list, list_)
UnionStringsInPlace(&list, list_)
}
return list
}

View File

@@ -89,7 +89,7 @@ func TestFilterStrings(test *testing.T) {
}
/* ---------------------------------------------------------------- *
* TESTCASE UnionStrings2, UnionStringsTo, UnionStringsList
* TESTCASE UnionStrings2, UnionStringsInPlace, UnionStringsList
* ---------------------------------------------------------------- */
func TestUnionStrings2(test *testing.T) {
@@ -101,11 +101,11 @@ func TestUnionStrings2(test *testing.T) {
assert.Equal([]string{"black", "blue", "green", "grey", "lila", "orange", "red", "yellow"}, list)
}
func TestUnionStringsTo(test *testing.T) {
func TestUnionStringsInPlace(test *testing.T) {
var assert = assert.New(test)
var list1 = []string{"red", "blue", "green"}
var list2 = []string{"yellow", "red", "blue", "red", "black"}
utils.UnionStringsTo(&list1, list2)
utils.UnionStringsInPlace(&list1, list2)
utils.SortStrings(&list1)
assert.Equal([]string{"black", "blue", "green", "red", "yellow"}, list1)
}