当前位置: 首页>>代码示例>>Java>>正文


Java FinalBitSet类代码示例

本文整理汇总了Java中gov.nasa.jpf.util.FinalBitSet的典型用法代码示例。如果您正苦于以下问题:Java FinalBitSet类的具体用法?Java FinalBitSet怎么用?Java FinalBitSet使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


FinalBitSet类属于gov.nasa.jpf.util包,在下文中一共展示了FinalBitSet类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getInstanceFilterMask

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected FinalBitSet getInstanceFilterMask(ClassInfo ci) {
  FinalBitSet v = instanceFilterMasks.get(ci);
  if (v == null) {
    BitArray b = new BitArray(ci.getInstanceDataSize());
    b.setAll();
    for (FieldInfo fi : filter.getMatchedInstanceFields(ci)) {
      int start = fi.getStorageOffset();
      int end = start + fi.getStorageSize();
      for (int i = start; i < end; i++) {
        b.clear(i);
      }
    }
    v = FinalBitSet.create(b);
    if (v == null) throw new IllegalStateException("Null BitArray returned.");
    instanceFilterMasks.put(ci, v);
  }
  return v;
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:19,代码来源:FilteringSerializer.java

示例2: getStaticFilterMask

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected FinalBitSet getStaticFilterMask(ClassInfo ci) {
  FinalBitSet v = staticFilterMasks.get(ci);
  if (v == null) {
    BitArray b = new BitArray(ci.getStaticDataSize());
    b.setAll();
    for (FieldInfo fi : filter.getMatchedStaticFields(ci)) {
      int start = fi.getStorageOffset();
      int end = start + fi.getStorageSize();
      for (int i = start; i < end; i++) {
        b.clear(i);
      }
    }
    v = FinalBitSet.create(b);
    if (v == null) throw new IllegalStateException("Null BitArray returned.");
    staticFilterMasks.put(ci, v);
  }
  return v;
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:19,代码来源:FilteringSerializer.java

示例3: processNamedFields

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected void processNamedFields (ClassInfo ci, Fields fields){
  FinalBitSet filtered = getInstanceFilterMask(ci);
  FinalBitSet refs = getInstanceRefMask(ci);

  // using a block operation probably doesn't buy us much here since
  // we would have to blank the filtered slots and then visit the
  // non-filtered reference slots, i.e. do two iterations over
  // the mask bit sets
  int[] values = fields.asFieldSlots();
  for (int i = 0; i < values.length; i++) {
    if (!filtered.get(i)) {
      int v = values[i];
      if (refs.get(i)) {
        processReference(v);
      } else {
        buf.add(v);
      }
    }
  }
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:21,代码来源:FilteringSerializer.java

示例4: serializeClass

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected void serializeClass (StaticElementInfo sei){
  buf.add(sei.getStatus());

  Fields fields = sei.getFields();
  ClassInfo ci = sei.getClassInfo();
  FinalBitSet filtered = getStaticFilterMask(ci);
  FinalBitSet refs = getStaticRefMask(ci);
  int max = ci.getStaticDataSize();
  for (int i = 0; i < max; i++) {
    if (!filtered.get(i)) {
      int v = fields.getIntValue(i);
      if (refs.get(i)) {
        processReference(v);
      } else {
        buf.add(v);
      }
    }
  }
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:20,代码来源:FilteringSerializer.java

示例5: processNamedFields

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
@Override
protected void processNamedFields(ClassInfo ci, Fields fields) {
  FinalBitSet filtered = getInstanceFilterMask(ci);
  int nFields = ci.getNumberOfInstanceFields();
  int[] slotValues = fields.asFieldSlots(); // for non-attributed fields

  for (int i = 0; i < nFields; i++) {
    FieldInfo fi = ci.getInstanceField(i);

    if (declaredFieldsOnly && fi.getClassInfo() != ci) {
      continue;
    }

    processField(fields, slotValues, fi, filtered);
  }
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:17,代码来源:DynamicAbstractionSerializer.java

示例6: serializeClass

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
@Override
protected void serializeClass (StaticElementInfo sei) {
  ClassInfo ci = sei.getClassInfo();
  Fields fields = sei.getFields();

  if (StringSetMatcher.isMatch(ci.getName(), includeClasses, excludeClasses)) {
    buf.add(sei.getStatus());

    FinalBitSet filtered = getStaticFilterMask(ci);
    int[] slotValues = fields.asFieldSlots();

    for (FieldInfo fi : ci.getDeclaredStaticFields()) {
      processField(fields, slotValues, fi, filtered);
    }

  } else {
    // ignored class, but still process references to extract live objects
    processNamedStaticReferenceFields(ci, fields);
  }
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:21,代码来源:DynamicAbstractionSerializer.java

示例7: getInstanceRefMask

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected FinalBitSet getInstanceRefMask(ClassInfo ci) {
  FinalBitSet v = instanceRefMasks.get(ci);
  if (v == null) {
    BitArray b = new BitArray(ci.getInstanceDataSize());
    for (FieldInfo fi : filter.getMatchedInstanceFields(ci)) {
      if (fi.isReference()) {
        b.set(fi.getStorageOffset());
      }
    }
    v = FinalBitSet.create(b);
    if (v == null) throw new IllegalStateException("Null BitArray returned.");
    instanceRefMasks.put(ci, v);
  }
  return v;
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:16,代码来源:FilteringSerializer.java

示例8: getStaticRefMask

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected FinalBitSet getStaticRefMask(ClassInfo ci) {
  FinalBitSet v = staticRefMasks.get(ci);
  if (v == null) {
    BitArray b = new BitArray(ci.getStaticDataSize());
    for (FieldInfo fi : filter.getMatchedStaticFields(ci)) {
      if (fi.isReference()) {
        b.set(fi.getStorageOffset());
      }
    }
    v = FinalBitSet.create(b);
    if (v == null) throw new IllegalStateException("Null BitArray returned.");
    staticRefMasks.put(ci, v);
  }
  return v;
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:16,代码来源:FilteringSerializer.java

示例9: processNamedInstanceReferenceFields

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected void processNamedInstanceReferenceFields(ClassInfo ci, Fields fields) {
  FinalBitSet filtered = getInstanceFilterMask(ci);
  FinalBitSet refs = getInstanceRefMask(ci);
  int[] slotValues = fields.asFieldSlots(); // for non-attributed fields

  for (int i = 0; i < slotValues.length; i++) {
    if (!filtered.get(i)) {
      if (refs.get(i)) {
        processReference(slotValues[i]);
      }
    }
  }
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:14,代码来源:DynamicAbstractionSerializer.java

示例10: processNamedStaticReferenceFields

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected void processNamedStaticReferenceFields(ClassInfo ci, Fields fields) {
  FinalBitSet filtered = getStaticFilterMask(ci);
  FinalBitSet refs = getStaticRefMask(ci);
  int[] slotValues = fields.asFieldSlots(); // for non-attributed fields

  for (int i = 0; i < slotValues.length; i++) {
    if (!filtered.get(i)) {
      if (refs.get(i)) {
        processReference(slotValues[i]);
      }
    }
  }
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:14,代码来源:DynamicAbstractionSerializer.java

示例11: process

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
@Override
public void process (ElementInfo ei) {
  super.process( ei);
  
  FinalBitSet filtered = !ei.isArray() ? getInstanceFilterMask(ei.getClassInfo()) : null;
  os.print(ei, filtered);
  os.println();
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:9,代码来源:DebugCFSerializer.java

示例12: serializeClass

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
@Override
protected void serializeClass (StaticElementInfo sei){
  super.serializeClass(sei);
  
  FinalBitSet filtered = getStaticFilterMask(sei.getClassInfo());
  os.print(sei, filtered);
  os.println();    
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:9,代码来源:DebugCFSerializer.java

示例13: printFields

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
protected void printFields (ElementInfo ei, FieldInfo[] fields, FinalBitSet filterMask){
  if (fields != null){
    for (int i = 0; i < fields.length; i++) {
      if (i > 0) {
        ps.print(',');
      }
      print(ei, fields[i], (filterMask != null && filterMask.get(i)));
    }
  }
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:11,代码来源:JPFOutputStream.java

示例14: print

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
public void print (ElementInfo ei, FinalBitSet filterMask){
  boolean isObject = ei.isObject();
  ClassInfo ci = ei.getClassInfo();
  
  int ref = (useSid) ? ei.getSerializationId() : ei.getObjectRef();
  ps.printf("@%x ", ref);
  
  if (isObject){
    ps.print("object ");
    if (ei.isArray()){
      ps.print( Types.getTypeName(ci.getName()));
    } else {
      ps.print(ci.getName());
    }
  } else {
    ps.print("class ");
    ps.print(ci.getName());
  }
  
  ps.print(':');
  
  if (isObject){
    if (ei.isArray()){
      ps.print('[');
      ei.getArrayFields().printElements(ps, maxElements);
      ps.print(']');
          
    } else {
      ps.print('{');
      printFields(ei, ci.getInstanceFields(), filterMask);
      ps.print('}');
    }
    
  } else {
    ps.print('{');
    printFields( ei, ci.getDeclaredStaticFields(), filterMask);        
    ps.print('}');
  }
}
 
开发者ID:grzesuav,项目名称:gjpf-core,代码行数:40,代码来源:JPFOutputStream.java

示例15: print

import gov.nasa.jpf.util.FinalBitSet; //导入依赖的package包/类
public void print (ElementInfo ei, FinalBitSet filterMask){
  boolean isObject = ei.isObject();
  ClassInfo ci = ei.getClassInfo();
  
  int ref = (useSid) ? ei.getSid() : ei.getObjectRef();
  ps.printf("@%x ", ref);
  
  if (isObject){
    ps.print("object ");
    if (ei.isArray()){
      ps.print( Types.getTypeName(ci.getName()));
    } else {
      ps.print(ci.getName());
    }
  } else {
    ps.print("class ");
    ps.print(ci.getName());
  }
  
  ps.print(':');
  
  if (isObject){
    if (ei.isArray()){
      ps.print('[');
      ei.getArrayFields().printElements(ps, maxElements);
      ps.print(']');
          
    } else {
      ps.print('{');
      printFields(ei, ci.getInstanceFields(), filterMask);
      ps.print('}');
    }
    
  } else {
    ps.print('{');
    printFields( ei, ci.getDeclaredStaticFields(), filterMask);        
    ps.print('}');
  }
}
 
开发者ID:grzesuav,项目名称:jpf-core,代码行数:40,代码来源:JPFOutputStream.java


注:本文中的gov.nasa.jpf.util.FinalBitSet类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。