idgenerator.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. // Copyright 2008 The Closure Library Authors. All Rights Reserved.
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS-IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. /**
  15. * @fileoverview Generator for unique element IDs.
  16. *
  17. */
  18. goog.provide('goog.ui.IdGenerator');
  19. /**
  20. * Creates a new id generator.
  21. * @constructor
  22. * @final
  23. */
  24. goog.ui.IdGenerator = function() {};
  25. goog.addSingletonGetter(goog.ui.IdGenerator);
  26. /**
  27. * Next unique ID to use
  28. * @type {number}
  29. * @private
  30. */
  31. goog.ui.IdGenerator.prototype.nextId_ = 0;
  32. /**
  33. * Gets the next unique ID.
  34. * @return {string} The next unique identifier.
  35. */
  36. goog.ui.IdGenerator.prototype.getNextUniqueId = function() {
  37. return ':' + (this.nextId_++).toString(36);
  38. };