typescript-dotnet-core
Version:
A the core classes and utilities of a JavaScript-Friendly .NET Based TypeScript Library.
7 lines (6 loc) • 938 B
JavaScript
;
/*!
* @author electricessence / https://github.com/electricessence/
* Licensing: MIT https://github.com/electricessence/TypeScript.NET-Core/blob/master/LICENSE.md
*/Object.defineProperty(exports,"__esModule",{value:!0});var Types_1=require("../../Types"),VOID0=void 0,NULL="null",GET_SYMBOL="getSymbol",GET_HASH_CODE="getHashCode";function getIdentifier(e,t){if(void 0===t&&(t=!1),Types_1.default.isPropertyKey(e))return e;if(null===e)return NULL;if(e===VOID0)return Types_1.default.UNDEFINED;if(Types_1.default.hasMethod(e,GET_SYMBOL))return e.getSymbol();if(Types_1.default.hasMethod(e,GET_HASH_CODE))return e.getHashCode();if(t){if(Types_1.default.isFunction(t))return t(e);throw"Cannot create known identity."}return typeof e.toString==Types_1.default.FUNCTION?e.toString():Object.prototype.toString.call(e)}exports.getIdentifier=getIdentifier,exports.default=getIdentifier;
//# sourceMappingURL=getIdentifier.js.map