Package xscript.runtime.clazz

Source Code of xscript.runtime.clazz.XArray

package xscript.runtime.clazz;

import xscript.runtime.XVirtualMachine;
import xscript.runtime.object.XObject;


public class XArray extends XClass {

  private int primitiveID;
  private XField lengthField;
 
  protected XArray(XVirtualMachine virtualMachine, String name, int primitiveID) {
    super(virtualMachine, name);
    this.primitiveID = primitiveID;
  }

  public XField getLengthField(){
    return lengthField;
  }

  public int getPrimitiveID(){
    return primitiveID;
  }
 
  @Override
  public void markObjectObjectsVisible(XObject object) {
    super.markObjectObjectsVisible(object);
    if(primitiveID==XPrimitive.OBJECT){
      int size = object.getArrayLength();
      for(int i=0; i<size; i++){
        long pointer = object.getArrayElement(i);
        XObject element = virtualMachine.getObjectProvider().getObject(pointer);
        if(element!=null){
          element.markVisible();
        }
      }
    }
  }
 
}
TOP

Related Classes of xscript.runtime.clazz.XArray

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.