Exemple #1
0
def merge_option(opts: Map, k: str, v):
    keys = k.split(".")
    new_keys = []
    for value in keys:
        if value != "":
            new_keys.append(value)
    keys = new_keys
    length = len(keys)
    last = length - 1
    if length > 1:
        for i in range(length):
            key = keys[i:i + 1][0]
            if i < last:
                if opts.get(key) == None:
                    opts = opts.setdefault(key, Map())
                else:
                    opts = opts.get(key)
                    if opts.contains(keys[i + 1:i + 2][0]):
                        if i == last - 1:
                            return
                        else:
                            t = type(opts.get(keys[i + 1:i + 2][0]))
                            if t != Map and t != dict:
                                return
            else:
                opts.setdefault(key, v)

    else:
        if opts.contains(k) == False:
            opts.set(k, v)
Exemple #2
0
from bee.data.map import Map

m1 = Map(('a', 'b', 'c'), (1, 2, 3))

print(m1.keys())
print(m1.values())
print(m1.items())
print(hasattr(m1, 'a'))
print(m1.contains('a'))

# m1.remove("a")

delattr(m1, "a")
print(m1.keys())
m1.empty()
print(m1.values())

# print(m1.get(1))

m2 = Map(a=1, b=2)

print(m2)

# m3 = Map({"a" : 1})
#
# print(m3)