int j = 0;
for (; j < valueLen && j < preCount; j++) {
pre.get(j).assign(runtime, context, self, value.eltInternal(j), Block.NULL_BLOCK, false);
}
Node rest = node.getRest();
if (rest != null) {
if (rest.getNodeType() == NodeType.STARNODE) {
// no check for '*'
} else if (preCount + postCount < valueLen) {
rest.assign(runtime, context, self, value.subseqLight(preCount, valueLen - preCount - postCount), Block.NULL_BLOCK, false);
} else {
rest.assign(runtime, context, self, RubyArray.newEmptyArray(runtime), Block.NULL_BLOCK, false);
}
// FIXME: This is wrong
int postIndexBase = valueLen - postCount;
for (int i = 0; i < valueLen && i < postCount; i++) {