<commit_before>SOOP
====

Simple Object Oriented Programming framework for JavaScript. It's light-weight and efficient.

Usage
-----

###Defining a class
Note: Every class must have a constructor defined

	soop.define('app.namespace.TestClass', {
		value: 42,
		constructor: function() {},
		getValue: function() { return this.value; }
	});

	var test = new app.namespace.TestClass();
	test.getValue(); //42

###Inheriting a super class

	soop.define('SuperClass', {
		value: 0,
		constructor: function(value) { this.value = value; },
		func: function() { return 1; }
	});

	soop.define('TestClass', {
		inherits: SuperClass,
		constructor: function(value) {
			this.super(value);
			this.value++;
		},
		func: function me() {
			return me.super.call(this)+1;<commit_msg>added some notes to readme<commit_after>SOOP
====

Simple Object Oriented Programming framework for JavaScript. It's light-weight and efficient.

This framework requires *ECMAScript 5*

Usage
-----

###Defining a class
Notes:
* Every class must at least define a constructor
* A class may have a namespace 0 or more levels deep ('.' separated)
* Property descriptors will be preserved (configurable, enumerable, writable, etc...)

	soop.define('app.namespace.TestClass', {
		value: 42,
		constructor: function() {},
		getValue: function() { return this.value; }
	});

	var test = new app.namespace.TestClass();
	test.getValue(); //42

###Inheriting a super class

	soop.define('SuperClass', {
		value: 0,
		constructor: function(value) { this.value = value; },
		func: function() { return 1; }
	});

	soop.define('TestClass', {
		inherits: SuperClass,
		constructor: function(value) {
			this.super(value);
			this.value++;
		},
		func: function me() {
			return me.super.call(this)+1;
{'fraction_non_alphanumeric': 0.14578587699316628, 'fraction_numerical': 0.009111617312072893, 'mean_word_length': 4.092753623188406, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4680915', 'n_tokens_mistral': 594, 'n_tokens_neox': 535, 'n_words': 162}