Skip to content

Commit

Permalink
Showing 1 changed file with 4 additions and 4 deletions.
Original file line number Diff line number Diff line change
@@ -377,7 +377,7 @@ public Object set(VirtualFrame frame, DynamicObject array, Object indexObject, O
return executeSet(frame, array, index, value, unused);
}

// array[start, end] = object
// array[start, length] = object

@Specialization(guards = { "!isRubyArray(value)", "wasProvided(value)", "strategy.specializesFor(value)" }, limit = "ARRAY_STRATEGIES")
public Object setObject(VirtualFrame frame, DynamicObject array, int start, int length, Object value,
@@ -396,7 +396,7 @@ public Object setObject(VirtualFrame frame, DynamicObject array, int start, int
return executeSet(frame, array, start, length, ary);
}

// array[start, end] = other_array, with length == other_array.size
// array[start, length] = other_array, with length == other_array.size

@Specialization(guards = {
"isRubyArray(replacement)",
@@ -413,7 +413,7 @@ public Object setOtherIntArraySameLength(DynamicObject array, int start, int len
return replacement;
}

// array[start, end] = other_array, with length != other_array.size
// array[start, length] = other_array, with length != other_array.size

@Specialization(guards = {
"isRubyArray(replacement)",
@@ -467,7 +467,7 @@ public Object setOtherArray(VirtualFrame frame, DynamicObject array, int rawStar
return replacement;
}

// array[start, end] = object_or_array with non-int start or end
// array[start, length] = object_or_array with non-int start or length

@Specialization(guards = { "!isInteger(startObject) || !isInteger(lengthObject)", "wasProvided(value)" })
public Object setStartLengthNotInt(VirtualFrame frame, DynamicObject array, Object startObject, Object lengthObject, Object value,

0 comments on commit e1989e9

Please sign in to comment.