A minimalistic library intended to help in using namespaces and class inheritance in JavaScript.
Objs enables:
- Class declaration using namespaces
- Access to class constructors using their namespaces
- Simplified inheritance syntax which follow ExtJS, Prototype, Mootools conventions
- Shortcuts to superclass and its methods
- A complete library to help in using OOP for less than 1KB
- Documentation and examples: Github Wiki
Copyright © 2006-2012 Frederic Saunier, www.tekool.net
Objs may be freely distributed under the MIT license.
The project was built using YUICompressor and YUIant.
Unit tests are built upon YUI Test Standalone Library.
The tests run by opening the /index.html. The test runner and Unit Test
framework loads all the libraries it needs from the test/lib/ folder. They
were first built upon YUI 3.2.0 and YUITest 1.0.0 b1 standalone libraries.
- License changed to an MIT license.
- Error message “inexistent” changed to “non-existent”
- Two loops were needed to add class properties to its prototype, there’s now only one
- Reduced file size but reverted some changes to increase speed vs size optimizations
- Protobject (the object used to declare class properties and methods) is now mandatory.
- An exception is thrown when trying to import a class which isn’t registered.
- Redefining a class with the same classpath now replace it with the new class definition.
- When the second parameter is a strict “null”, the associated classpath is removed from Objs and ready for GC.
- Each class has a new $classpath parameter reflecting the classpath with which it was declared.