Security:Strawman Model: Difference between revisions

Line 104: Line 104:


Let urlPrincipal(s) = pseudo(s) ? subject() : origin(s).
Let urlPrincipal(s) = pseudo(s) ? subject() : origin(s).
Let setLocation(w, s) = w.location = urlString(s), w.principal = urlPrincipal(s).


Let parse(w, s) = parse string s in scope of w according to the Grammar.
Let parse(w, s) = parse string s in scope of w according to the Grammar.


Let load(w, s) = stack.push(w), setLocation(w, s), parse(w, fetch(w, w.location)), stack.pop()
Let load(w, s) = stack.push(w),  
w.location = urlString(s), w.principal = urlPrincipal(s), parse(w, fetch(w, w.location)), stack.pop()


Let open(s) = (let w = new Window('about:blank', urlPrincipal(s), global()), !s || load(w, s), w).
Let open(s) = (let w = new Window('about:blank', urlPrincipal(s), global()), !s || load(w, s), w).
Confirmed users, Bureaucrats and Sysops emeriti
419

edits