RegExp for event identifiers
by Yahiko
HTML
<body>
<div>Fichier</div>
<textarea id="File" readonly class="code" style="width:100%;height:100px"></textarea>
<div>Evenements</div>
<textarea id="Events" readonly class="code" style="width:100%"></textarea>
</body>
JavaScript
// Pas de support pour les nested classes
var file = "";
file += "class CharacterModel extends MvcModel {\n";
file += " public hp: number;\n";
file += " public attributeChanged: MvcEvent;\n";
file += " public statusChanged: MvcEvent;\n";
file += "}\n";
$("#File").text(file);
lines = file.split("\n");
var reClassId = /\s*class\s*\b([A-Za-z_]\w*)\b.*/;
var reEventId = /\s*public\s*\b([A-Za-z_]\w*)\b\s*:\s*MvcEvent\s*(?:=.+)?;/;
var events = [];
var curClass = "";
for (var i=0; i<lines.length; i++) {
var line = lines[i];
var result = reClassId.exec(line);
if (result) {
curClass = result[1];
}
var result = reEventId.exec(line);
if (result) {
events[result[1]] = curClass;
}
} // for i
var text = "";
for (var key in events) {
var value = events[key];
text += key + "\n";
} // for i
$("#Events").text(text);