Skip to content

Commit

Permalink
Showing 1 changed file with 4 additions and 6 deletions.
Original file line number Diff line number Diff line change
@@ -35,30 +35,28 @@ public AppendOneNode(RubyContext context, SourceSection sourceSection) {

// Append into an empty array

// TODO CS 12-May-15 differentiate between null and empty but possibly having enough space

@Specialization(guards = "isEmptyArray(array)")
@Specialization(guards = "isNullArray(array)")
public DynamicObject appendOneEmpty(DynamicObject array, int value) {
Layouts.ARRAY.setStore(array, new int[]{value});
Layouts.ARRAY.setSize(array, 1);
return array;
}

@Specialization(guards = "isEmptyArray(array)")
@Specialization(guards = "isNullArray(array)")
public DynamicObject appendOneEmpty(DynamicObject array, long value) {
Layouts.ARRAY.setStore(array, new long[]{value});
Layouts.ARRAY.setSize(array, 1);
return array;
}

@Specialization(guards = "isEmptyArray(array)")
@Specialization(guards = "isNullArray(array)")
public DynamicObject appendOneEmpty(DynamicObject array, double value) {
Layouts.ARRAY.setStore(array, new double[]{value});
Layouts.ARRAY.setSize(array, 1);
return array;
}

@Specialization(guards = "isEmptyArray(array)")
@Specialization(guards = "isNullArray(array)")
public DynamicObject appendOneEmpty(DynamicObject array, Object value) {
Layouts.ARRAY.setStore(array, new Object[]{value});
Layouts.ARRAY.setSize(array, 1);

0 comments on commit e69ca7e

Please sign in to comment.