{"size": 620, "ext": "js", "max_stars_repo_path": "semantic.js", "max_stars_repo_name": "Moligaloo/DSL", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "semantic.js", "max_issues_repo_name": "Moligaloo/DSL", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "semantic.js", "max_forks_repo_name": "Moligaloo/DSL", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 20.6666666667, "max_line_length": 61, "alphanum_fraction": 0.6693548387}

var SemanticParser = function(raw){
	this.result = this.parse(raw);
}

SemanticParser.prototype.parse = function(raw) {
	return this.removeNullElements(raw);
}

SemanticParser.prototype.removeNullElements = function(raw) {
	if($.isArray(raw)){
		var cleaned = new Array();
		for(var i=0; i<raw.length; i++){
			var elem = raw[i];
			if(elem == null || elem == undefined)
				continue;
			else
				cleaned.push(this.removeNullElements(elem));
		}

		return cleaned;
	}else if(raw instanceof Object){
		for(var name in raw){
			raw[name] = this.removeNullElements(raw[name]);
		}
		return raw;
	}else{
		return raw;
	}
};