in public/dexie.js [4744:4768]
function parseIndexSyntax(indexes) {
/// <param name="indexes" type="String"></param>
/// <returns type="Array" elementType="IndexSpec"></returns>
var rv = [];
indexes.split(",").forEach(function (index) {
index = index.trim();
var name = index.replace(/([&*]|\+\+)/g, ""); // Remove "&", "++" and "*"
// Let keyPath of "[a+b]" be ["a","b"]:
var keyPath = /^\[/.test(name)
? name.match(/^\[(.*)\]$/)[1].split("+")
: name;
rv.push(
new IndexSpec(
name,
keyPath || null,
/\&/.test(index),
/\*/.test(index),
/\+\+/.test(index),
isArray(keyPath),
/\./.test(index)
)
);
});
return rv;
}