mirror of
https://github.com/atom/atom.git
synced 2026-01-23 13:58:08 -05:00
Include 'indices' property on OnigRegExp result with capture group indices
This commit is contained in:
@@ -20,11 +20,16 @@ public:
|
||||
if ([result count] == 0) return CefV8Value::CreateNull();
|
||||
|
||||
CefRefPtr<CefV8Value> resultArray = CefV8Value::CreateArray();
|
||||
CefRefPtr<CefV8Value> indicesArray = CefV8Value::CreateArray();
|
||||
|
||||
for (int i = 0; i < [result count]; i++) {
|
||||
resultArray->SetValue(i, CefV8Value::CreateString([[result stringAt:i] UTF8String]));
|
||||
indicesArray->SetValue(i, CefV8Value::CreateInt([result locationAt:i]));
|
||||
}
|
||||
|
||||
resultArray->SetValue("index", CefV8Value::CreateInt([result locationAt:0]), V8_PROPERTY_ATTRIBUTE_NONE);
|
||||
resultArray->SetValue("indices", indicesArray, V8_PROPERTY_ATTRIBUTE_NONE);
|
||||
|
||||
return resultArray;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ describe "OnigRegExp", ->
|
||||
result = regex.search("----a123----")
|
||||
expect(result).toEqual ["a123", "123"]
|
||||
expect(result.index).toBe 4
|
||||
expect(result.indices).toEqual [4, 5]
|
||||
|
||||
it "returns null if it does not match", ->
|
||||
regex = new OnigRegExp("\\w(\\d+)")
|
||||
|
||||
Reference in New Issue
Block a user