namespace.js
32 lines
| 852 B
| application/javascript
|
JavascriptLexer
Brian E. Granger
|
r4609 | //---------------------------------------------------------------------------- | ||
// Copyright (C) 2008-2011 The IPython Development Team | ||||
// | ||||
// Distributed under the terms of the BSD License. The full license is in | ||||
// the file COPYING, distributed as part of this software. | ||||
//---------------------------------------------------------------------------- | ||||
Brian E. Granger
|
r4352 | var IPython = IPython || {}; | ||
IPython.namespace = function (ns_string) { | ||||
Matthias BUSSONNIER
|
r12103 | "use strict"; | ||
Brian E. Granger
|
r4352 | var parts = ns_string.split('.'), | ||
parent = IPython, | ||||
i; | ||||
// String redundant leading global | ||||
if (parts[0] === "IPython") { | ||||
parts = parts.slice(1); | ||||
} | ||||
for (i=0; i<parts.length; i+=1) { | ||||
// Create property if it doesn't exist | ||||
if (typeof parent[parts[i]] === "undefined") { | ||||
Stefan van der Walt
|
r5479 | parent[parts[i]] = {}; | ||
Brian E. Granger
|
r4352 | } | ||
} | ||||
return parent; | ||||
}; | ||||
Brian E. Granger
|
r4349 | |||