diff options
author | Jose <jose@zeroc.com> | 2014-09-02 14:22:34 +0200 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2014-09-02 14:22:34 +0200 |
commit | fef794cdd1f8eb698fa3ccfe6f4cacba88030e9d (patch) | |
tree | 8e0c3c353dbbaa57d60a1da49c13b4153e918763 /js/src/Ice/ModuleRegistry.js | |
parent | Fix (ICE-3445) - consider not installing internal header files (diff) | |
download | ice-fef794cdd1f8eb698fa3ccfe6f4cacba88030e9d.tar.bz2 ice-fef794cdd1f8eb698fa3ccfe6f4cacba88030e9d.tar.xz ice-fef794cdd1f8eb698fa3ccfe6f4cacba88030e9d.zip |
Fixed (ICE-5654) - Update JS mapping to not use global types in NodeJS
Diffstat (limited to 'js/src/Ice/ModuleRegistry.js')
-rw-r--r-- | js/src/Ice/ModuleRegistry.js | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/js/src/Ice/ModuleRegistry.js b/js/src/Ice/ModuleRegistry.js new file mode 100644 index 00000000000..f2fed3dabf6 --- /dev/null +++ b/js/src/Ice/ModuleRegistry.js @@ -0,0 +1,62 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2014 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +var __modules__ = {}; + +var __M = +{ + module: function(name) + { + var m = __modules__[name]; + if(m === undefined) + { + m = {}; + __modules__[name] = m; + } + return m; + }, + require: function(m, name, paths) + { + var i = 0, length = paths.length, _m, o; + for(; i < length; ++i) + { + o = m.require(paths[i])[name]; + if(o) + { + _m = o; + } + } + return _m; + }, + type: function(scoped) + { + if(scoped == undefined) + { + return undefined; + } + var components = scoped.split("."); + var T = __modules__; + + for(var i = 0, length = components.length; i < length; ++i) + { + T = T[components[i]]; + if(T === undefined) + { + return undefined; + } + } + return T; + } +}; + +var Ice = __M.module("Ice"); +Ice.__ICE_NODEJS__ = true; +Ice.Slice = {}; +Ice.__M = __M; +module.exports.Ice = Ice; |