com.sun.codemodel.JBlock.forEach()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(13.7k)|赞(0)|评价(0)|浏览(77)

本文整理了Java中com.sun.codemodel.JBlock.forEach()方法的一些代码示例,展示了JBlock.forEach()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JBlock.forEach()方法的具体详情如下:
包路径:com.sun.codemodel.JBlock
类名称:JBlock
方法名:forEach

JBlock.forEach介绍

[英]Creates an enhanced For statement based on j2se 1.5 JLS and add it to this block
[中]基于j2se 1.5 JLS创建增强的For语句,并将其添加到此块中

代码示例

代码示例来源:origin: joelittlejohn/jsonschema2pojo

private JFieldVar addQuickLookupMap(JDefinedClass _enum, JType backingType) {
  JClass lookupType = _enum.owner().ref(Map.class).narrow(backingType.boxify(), _enum);
  JFieldVar lookupMap = _enum.field(JMod.PRIVATE | JMod.STATIC | JMod.FINAL, lookupType, "CONSTANTS");
  JClass lookupImplType = _enum.owner().ref(HashMap.class).narrow(backingType.boxify(), _enum);
  lookupMap.init(JExpr._new(lookupImplType));
  JForEach forEach = _enum.init().forEach(_enum, "c", JExpr.invoke("values"));
  JInvocation put = forEach.body().invoke(lookupMap, "put");
  put.arg(forEach.var().ref("value"));
  put.arg(forEach.var());
  return lookupMap;
}

代码示例来源:origin: javaee/glassfish

private void handleMultiValue(JVar values) {
  // [RESULT]
  // List<S> values = dom.leafElements("...");
  // <packer init>
  // for( S v : values ) {
  //   <packer set>(<as>(v));
  // }
  //  ... assign ...
  packer.start(values.invoke("size"));
  JForEach forEach = body.forEach(conv.sourceType(), id(), values);
  packer.pack(forEach.body(),conv.as(forEach.var(),packer.itemType()), forEach.var());
  assign(packer.end());
}

代码示例来源:origin: e-biz/androidkickstartr

configureActionBarBody.invoke(getSupportActionBar, "setNavigationMode").arg(navigationModeList);
JForEach forEachLocation = configureActionBarBody.forEach(ref.string(), "location", locationsField);
JVar location = forEachLocation.var();

代码示例来源:origin: mklemm/jaxb2-rich-contract-plugin

JForEach loop(final JBlock block, final JExpression source, final JType sourceElementType, final JAssignmentTarget target, final JType targetElementType) {
  final JConditional ifNull = block._if(source.eq(JExpr._null()));
  ifNull._then().assign(target, JExpr._null());
  ifNull._else().assign(target, JExpr._new(this.pluginContext.arrayListClass.narrow(targetElementType)));
  return ifNull._else().forEach(sourceElementType, BuilderGenerator.ITEM_VAR_NAME, source);
}

代码示例来源:origin: mklemm/jaxb2-rich-contract-plugin

public JForEach loop(final JBlock block, final JExpression source, final JType sourceElementType, final JAssignmentTarget target, final JType targetElementType) {
  final JConditional ifNull = block._if(source.eq(JExpr._null()));
  ifNull._then().assign(target, JExpr._null());
  ifNull._else().assign(target, JExpr._new(this.arrayListClass.narrow(targetElementType)));
  return ifNull._else().forEach(sourceElementType, "_item", source);
}

代码示例来源:origin: eclipse-ee4j/glassfish

private void handleMultiValue(JVar values) {
  // [RESULT]
  // List<S> values = dom.leafElements("...");
  // <packer init>
  // for( S v : values ) {
  //   <packer set>(<as>(v));
  // }
  //  ... assign ...
  packer.start(values.invoke("size"));
  JForEach forEach = body.forEach(conv.sourceType(), id(), values);
  packer.pack(forEach.body(),conv.as(forEach.var(),packer.itemType()), forEach.var());
  assign(packer.end());
}

代码示例来源:origin: jpmml/jpmml-evaluator

static
private void createFormatMethod(JDefinedClass clazz, JPrimitiveType type){
  JCodeModel codeModel = clazz.owner();
  JClass numberClazz = codeModel.ref(Number.class);
  JClass stringBuilderClazz = codeModel.ref(StringBuilder.class);
  JMethod method = clazz.method(JMod.STATIC | JMod.PRIVATE, String.class, "format");
  JVar valuesParameter = method.varParam(numberClazz, "values");
  JBlock body = method.body();
  JVar sbVariable = body.decl(stringBuilderClazz, "sb", JExpr._new(stringBuilderClazz).arg(valuesParameter.ref("length").mul(JExpr.lit(32))));
  JForEach forStatement = body.forEach(numberClazz, "value", valuesParameter);
  JBlock forBody = forStatement.body();
  forBody.add(createReportInvocation(clazz, sbVariable, "${0}", Collections.singletonList(forStatement.var()), type));
  body._return(sbVariable.invoke("toString"));
}

代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.jaxb-xjc

public void fromRawValue(JBlock block, String uniqueName, JExpression $var) {
    JCodeModel cm = outline().getCodeModel();
    JClass elementType = ei.toType(outline(),EXPOSED).boxify();
    // [RESULT]
    // $t = new ArrayList();
    // for( Type e : $var ) {
    //     $var.add(new JAXBElement(e));
    // }
    // [core.fromRawValue]
    JClass col = cm.ref(ArrayList.class).narrow(elementType);
    JVar $t = block.decl(col,uniqueName+"_col",JExpr._new(col));
    JForEach loop = block.forEach(itemType(), uniqueName+"_i", $t);
    loop.body().invoke($var,"add").arg(createJAXBElement(loop.var()));
    acc.fromRawValue(block, uniqueName, $t);
  }
}

代码示例来源:origin: org.andromda.thirdparty.jaxb2_commons/jaxb-xjc

public void toRawValue(JBlock block, JVar $var) {
  JCodeModel cm = outline().getCodeModel();
  JClass elementType = ei.toType(outline(),EXPOSED).boxify();
  // [RESULT]
  // $var = new ArrayList();
  // for( JAXBElement e : [core.toRawValue] ) {
  //   if(e==null)
  //     $var.add(null);
  //   else
  //     $var.add(e.getValue());
  // }
  block.assign($var,JExpr._new(cm.ref(ArrayList.class).narrow(itemType().boxify())));
  JVar $col = block.decl(core.getRawType(), "col" + hashCode());
  acc.toRawValue(block,$col);
  JForEach loop = block.forEach(elementType, "v" + hashCode()/*unique string handling*/, $col);
  JConditional cond = loop.body()._if(loop.var().eq(JExpr._null()));
  cond._then().invoke($var,"add").arg(JExpr._null());
  cond._else().invoke($var,"add").arg(loop.var().invoke("getValue"));
}

代码示例来源:origin: org.andromda.thirdparty.jaxb2_commons/jaxb-xjc

public void fromRawValue(JBlock block, String uniqueName, JExpression $var) {
    JCodeModel cm = outline().getCodeModel();
    JClass elementType = ei.toType(outline(),EXPOSED).boxify();
    // [RESULT]
    // $t = new ArrayList();
    // for( Type e : $var ) {
    //     $var.add(new JAXBElement(e));
    // }
    // [core.fromRawValue]
    JClass col = cm.ref(ArrayList.class).narrow(elementType);
    JVar $t = block.decl(col,uniqueName+"_col",JExpr._new(col));
    JForEach loop = block.forEach(itemType(), uniqueName+"_i", $t);
    loop.body().invoke($var,"add").arg(createJAXBElement(loop.var()));
    acc.fromRawValue(block, uniqueName, $t);
  }
}

代码示例来源:origin: sun-jaxb/jaxb-xjc

public void toRawValue(JBlock block, JVar $var) {
  JCodeModel cm = outline().getCodeModel();
  JClass elementType = ei.toType(outline(),EXPOSED).boxify();
  // [RESULT]
  // $var = new ArrayList();
  // for( JAXBElement e : [core.toRawValue] ) {
  //   if(e==null)
  //     $var.add(null);
  //   else
  //     $var.add(e.getValue());
  // }
  block.assign($var,JExpr._new(cm.ref(ArrayList.class).narrow(itemType().boxify())));
  JVar $col = block.decl(core.getRawType(), "col" + hashCode());
  acc.toRawValue(block,$col);
  JForEach loop = block.forEach(elementType, "v" + hashCode()/*unique string handling*/, $col);
  JConditional cond = loop.body()._if(loop.var().eq(JExpr._null()));
  cond._then().invoke($var,"add").arg(JExpr._null());
  cond._else().invoke($var,"add").arg(loop.var().invoke("getValue"));
}

代码示例来源:origin: apache/servicemix-bundles

public void toRawValue(JBlock block, JVar $var) {
  JCodeModel cm = outline().getCodeModel();
  JClass elementType = ei.toType(outline(),EXPOSED).boxify();
  // [RESULT]
  // $var = new ArrayList();
  // for( JAXBElement e : [core.toRawValue] ) {
  //   if(e==null)
  //     $var.add(null);
  //   else
  //     $var.add(e.getValue());
  // }
  block.assign($var,JExpr._new(cm.ref(ArrayList.class).narrow(itemType().boxify())));
  JVar $col = block.decl(core.getRawType(), "col" + hashCode());
  acc.toRawValue(block,$col);
  JForEach loop = block.forEach(elementType, "v" + hashCode()/*unique string handling*/, $col);
  JConditional cond = loop.body()._if(loop.var().eq(JExpr._null()));
  cond._then().invoke($var,"add").arg(JExpr._null());
  cond._else().invoke($var,"add").arg(loop.var().invoke("getValue"));
}

代码示例来源:origin: org.glassfish.metro/webservices-tools

public void fromRawValue(JBlock block, String uniqueName, JExpression $var) {
    JCodeModel cm = outline().getCodeModel();
    JClass elementType = ei.toType(outline(),EXPOSED).boxify();
    // [RESULT]
    // $t = new ArrayList();
    // for( Type e : $var ) {
    //     $var.add(new JAXBElement(e));
    // }
    // [core.fromRawValue]
    JClass col = cm.ref(ArrayList.class).narrow(elementType);
    JVar $t = block.decl(col,uniqueName+"_col",JExpr._new(col));
    JForEach loop = block.forEach(itemType(), uniqueName+"_i", $t);
    loop.body().invoke($var,"add").arg(createJAXBElement(loop.var()));
    acc.fromRawValue(block, uniqueName, $t);
  }
}

代码示例来源:origin: sun-jaxb/jaxb-xjc

public void fromRawValue(JBlock block, String uniqueName, JExpression $var) {
    JCodeModel cm = outline().getCodeModel();
    JClass elementType = ei.toType(outline(),EXPOSED).boxify();
    // [RESULT]
    // $t = new ArrayList();
    // for( Type e : $var ) {
    //     $var.add(new JAXBElement(e));
    // }
    // [core.fromRawValue]
    JClass col = cm.ref(ArrayList.class).narrow(elementType);
    JVar $t = block.decl(col,uniqueName+"_col",JExpr._new(col));
    JForEach loop = block.forEach(itemType(), uniqueName+"_i", $t);
    loop.body().invoke($var,"add").arg(createJAXBElement(loop.var()));
    acc.fromRawValue(block, uniqueName, $t);
  }
}

代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.jaxb-xjc

public void toRawValue(JBlock block, JVar $var) {
  JCodeModel cm = outline().getCodeModel();
  JClass elementType = ei.toType(outline(),EXPOSED).boxify();
  // [RESULT]
  // $var = new ArrayList();
  // for( JAXBElement e : [core.toRawValue] ) {
  //   if(e==null)
  //     $var.add(null);
  //   else
  //     $var.add(e.getValue());
  // }
  block.assign($var,JExpr._new(cm.ref(ArrayList.class).narrow(itemType().boxify())));
  JVar $col = block.decl(core.getRawType(), "col" + hashCode());
  acc.toRawValue(block,$col);
  JForEach loop = block.forEach(elementType, "v" + hashCode()/*unique string handling*/, $col);
  JConditional cond = loop.body()._if(loop.var().eq(JExpr._null()));
  cond._then().invoke($var,"add").arg(JExpr._null());
  cond._else().invoke($var,"add").arg(loop.var().invoke("getValue"));
}

代码示例来源:origin: apache/servicemix-bundles

public void fromRawValue(JBlock block, String uniqueName, JExpression $var) {
    JCodeModel cm = outline().getCodeModel();
    JClass elementType = ei.toType(outline(),EXPOSED).boxify();
    // [RESULT]
    // $t = new ArrayList();
    // for( Type e : $var ) {
    //     $var.add(new JAXBElement(e));
    // }
    // [core.fromRawValue]
    JClass col = cm.ref(ArrayList.class).narrow(elementType);
    JVar $t = block.decl(col,uniqueName+"_col",JExpr._new(col));
    JForEach loop = block.forEach(itemType(), uniqueName+"_i", $t);
    loop.body().invoke($var,"add").arg(createJAXBElement(loop.var()));
    acc.fromRawValue(block, uniqueName, $t);
  }
}

代码示例来源:origin: org.brightify.torch/torch-compiler

@Override
public JStatement marshall(EntityDescriptionGenerator.ToRawEntityHolder holder, PropertyMirror propertyMirror) {
  JClass listType = CodeModelTypes.ref(typeHelper.singleGenericParameter(propertyMirror.getType()).toString());
  JBlock block = new JBlock();
  JVar items = block.decl(CodeModelTypes.LIST.narrow(listType), "items",
      JExpr._new(CodeModelTypes.ARRAY_LIST.narrow(listType)));
  JExpression propertyItems = propertyMirror.getGetter().getValue(holder.entity);
  JConditional isLazyList = block._if(propertyItems._instanceof(CodeModelTypes.LAZY_ARRAY_LIST));
  isLazyList._then().assign(items, JExpr.cast(CodeModelTypes.LAZY_ARRAY_LIST.narrow(listType), propertyItems));
  JForEach forEachItem = isLazyList._else().forEach(listType, "item", propertyItems);
  forEachItem.body().add(items.invoke("add").arg(forEachItem.var()));
  block.add(holder.torchFactory.invoke("begin").invoke("save").invoke("entities").arg(items));
  return block;
}

代码示例来源:origin: org.jsonschema2pojo/jsonschema2pojo-core

private JFieldVar addQuickLookupMap(JDefinedClass _enum, JType backingType) {
  JClass lookupType = _enum.owner().ref(Map.class).narrow(backingType.boxify(), _enum);
  JFieldVar lookupMap = _enum.field(JMod.PRIVATE | JMod.STATIC | JMod.FINAL, lookupType, "CONSTANTS");
  JClass lookupImplType = _enum.owner().ref(HashMap.class).narrow(backingType.boxify(), _enum);
  lookupMap.init(JExpr._new(lookupImplType));
  JForEach forEach = _enum.init().forEach(_enum, "c", JExpr.invoke("values"));
  JInvocation put = forEach.body().invoke(lookupMap, "put");
  put.arg(forEach.var().ref("value"));
  put.arg(forEach.var());
  return lookupMap;
}

代码示例来源:origin: com.googlecode.jsonschema2pojo/jsonschema2pojo-core

private JFieldVar addQuickLookupMap(JDefinedClass _enum) {
  JClass lookupType = _enum.owner().ref(Map.class).narrow(_enum.owner().ref(String.class), _enum);
  JFieldVar lookupMap = _enum.field(JMod.PRIVATE | JMod.STATIC, lookupType, "constants");
  JClass lookupImplType = _enum.owner().ref(HashMap.class).narrow(_enum.owner().ref(String.class), _enum);
  lookupMap.init(JExpr._new(lookupImplType));
  JForEach forEach = _enum.init().forEach(_enum, "c", _enum.staticInvoke("values"));
  JInvocation put = forEach.body().invoke(lookupMap, "put");
  put.arg(forEach.var().ref("value"));
  put.arg(forEach.var());
  return lookupMap;
}

代码示例来源:origin: io.konig/konig-schemagen

private void handleTypeProperty(JCodeModel model, JBlock body, PropertyConstraint p, JVar objectVar, JVar jsonVar) {
  
  JClass uriType = model.ref(URI.class);
  Integer maxCount = p.getMaxCount();
  if (maxCount!=null && maxCount==1) {
    
    JVar fieldValue = body.decl(uriType, "type").init(objectVar.invoke("getType"));	
    body.add(jsonVar.invoke("writeStringField").arg(JExpr.lit("type")).arg(fieldValue.invoke("getLocalName")));
    
  } else {
    
    JClass setClass = model.ref(Set.class);
    JClass uriSetClass = setClass.narrow(URI.class);
    
    JVar setVar = body.decl(uriSetClass, "type").init(objectVar.invoke("getAllTypes"));
    body.add(jsonVar.invoke("writeArrayFieldStart").arg(JExpr.lit("type")));
    JForEach forEach = body.forEach(uriType, "typeId", setVar);
    JVar typeId = forEach.var();
    forEach.body().add(jsonVar.invoke("writeString").arg(typeId.invoke("getLocalName")));
    
    body.add(jsonVar.invoke("writeEndArray"));
  }
  
}

相关文章