MCPcopy Index your code
hub / github.com/Macuyiko/minecraft-python / appendElement

Function appendElement

ServerEditorWeb/ace/worker-xml.js:1635–1699  ·  view source on GitHub ↗
(el,domBuilder,parseStack)

Source from the content-addressed store, hash-verified

1633 }
1634}
1635function appendElement(el,domBuilder,parseStack){
1636 var tagName = el.tagName;
1637 var localNSMap = null;
1638 var currentNSMap = parseStack[parseStack.length-1].currentNSMap;
1639 var i = el.length;
1640 while(i--){
1641 var a = el[i];
1642 var qName = a.qName;
1643 var value = a.value;
1644 var nsp = qName.indexOf(':');
1645 if(nsp>0){
1646 var prefix = a.prefix = qName.slice(0,nsp);
1647 var localName = qName.slice(nsp+1);
1648 var nsPrefix = prefix === 'xmlns' && localName
1649 }else{
1650 localName = qName;
1651 prefix = null
1652 nsPrefix = qName === 'xmlns' && ''
1653 }
1654 a.localName = localName ;
1655 if(nsPrefix !== false){//hack!!
1656 if(localNSMap == null){
1657 localNSMap = {}
1658 _copy(currentNSMap,currentNSMap={})
1659 }
1660 currentNSMap[nsPrefix] = localNSMap[nsPrefix] = value;
1661 a.uri = 'http://www.w3.org/2000/xmlns/'
1662 domBuilder.startPrefixMapping(nsPrefix, value)
1663 }
1664 }
1665 var i = el.length;
1666 while(i--){
1667 a = el[i];
1668 var prefix = a.prefix;
1669 if(prefix){//no prefix attribute has no namespace
1670 if(prefix === 'xml'){
1671 a.uri = 'http://www.w3.org/XML/1998/namespace';
1672 }if(prefix !== 'xmlns'){
1673 a.uri = currentNSMap[prefix]
1674 }
1675 }
1676 }
1677 var nsp = tagName.indexOf(':');
1678 if(nsp>0){
1679 prefix = el.prefix = tagName.slice(0,nsp);
1680 localName = el.localName = tagName.slice(nsp+1);
1681 }else{
1682 prefix = null;//important!!
1683 localName = el.localName = tagName;
1684 }
1685 var ns = el.uri = currentNSMap[prefix || ''];
1686 domBuilder.startElement(ns,localName,tagName,el);
1687 if(el.closed){
1688 domBuilder.endElement(ns,localName,tagName);
1689 if(localNSMap){
1690 for(prefix in localNSMap){
1691 domBuilder.endPrefixMapping(prefix)
1692 }

Callers 2

parseFunction · 0.85
worker-xml.jsFile · 0.85

Calls 1

_copyFunction · 0.85

Tested by

no test coverage detected