Module:Arguments: Difference between revisions

    m>Mr. Stradivarius
    (add a more detailed comment about metatable behaviour)
    m>Mr. Stradivarius
    (check fargs and pargs before writing new values to args if options.noOverwrite is set)
    Line 88: Line 88:


    metatable.__newindex = function (t, key, val)
    metatable.__newindex = function (t, key, val)
    if not options.readOnly and (not options.noOverwrite or metaArgs[key] == nil) then
    if not options.readOnly and (not options.noOverwrite or args[key] == nil) then
    metaArgs[key] = val
    metaArgs[key] = val
    end
    end