Java Code Examples for com.sun.codemodel.JOp#cond()
The following examples show how to use
com.sun.codemodel.JOp#cond() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: PartialCopyGenerator.java From jaxb2-rich-contract-plugin with MIT License | 5 votes |
private JExpression getIncludeCondition(final JVar fieldPathVar) { return JOp.cond( PartialCopyGenerator.this.propertyTreeUseParam.eq(PartialCopyGenerator.this.pluginContext.includeConst), fieldPathVar.ne(JExpr._null()), fieldPathVar.eq(JExpr._null()).cor(fieldPathVar.invoke("isLeaf").not()) ); }
Example 2
Source File: DrillSimpleFuncHolder.java From Bats with Apache License 2.0 | 4 votes |
protected HoldingContainer generateEvalBody(ClassGenerator<?> g, HoldingContainer[] inputVariables, String body, JVar[] workspaceJVars, FieldReference ref) { g.getEvalBlock().directStatement(String.format("//---- start of eval portion of %s function. ----//", getRegisteredNames()[0])); JBlock sub = new JBlock(true, true); JBlock topSub = sub; HoldingContainer out = null; MajorType returnValueType = getReturnType(); // add outside null handling if it is defined. if (getNullHandling() == NullHandling.NULL_IF_NULL) { JExpression e = null; for (HoldingContainer v : inputVariables) { if (v.isOptional()) { JExpression isNullExpr; if (v.isReader()) { isNullExpr = JOp.cond(v.getHolder().invoke("isSet"), JExpr.lit(1), JExpr.lit(0)); } else { isNullExpr = v.getIsSet(); } if (e == null) { e = isNullExpr; } else { e = e.mul(isNullExpr); } } } if (e != null) { // if at least one expression must be checked, set up the conditional. returnValueType = getReturnType().toBuilder().setMode(DataMode.OPTIONAL).build(); out = g.declare(returnValueType); e = e.eq(JExpr.lit(0)); JConditional jc = sub._if(e); jc._then().assign(out.getIsSet(), JExpr.lit(0)); sub = jc._else(); } } if (out == null) { out = g.declare(returnValueType); } // add the subblock after the out declaration. g.getEvalBlock().add(topSub); JVar internalOutput = sub.decl(JMod.FINAL, g.getHolderType(returnValueType), getReturnValue().getName(), JExpr._new(g.getHolderType(returnValueType))); addProtectedBlock(g, sub, body, inputVariables, workspaceJVars, false); List<String> holderFields = ValueHolderHelper.getHolderParams(returnValueType); for (String holderField : holderFields) { sub.assign(out.f(holderField), internalOutput.ref(holderField)); } if (sub != topSub) { sub.assign(out.f("isSet"),JExpr.lit(1)); // Assign null if NULL_IF_NULL mode } g.getEvalBlock().directStatement(String.format("//---- end of eval portion of %s function. ----//", getRegisteredNames()[0])); return out; }
Example 3
Source File: SimpleFunctionHolder.java From dremio-oss with Apache License 2.0 | 4 votes |
protected HoldingContainer generateEvalBody(ClassGenerator<?> g, CompleteType resolvedOutput, HoldingContainer[] inputVariables, String body, JVar[] workspaceJVars) { g.getEvalBlock().directStatement(String.format("//---- start of eval portion of %s function. ----//", registeredNames[0])); JBlock sub = new JBlock(true, true); JBlock topSub = sub; HoldingContainer out = null; // add outside null handling if it is defined. if (nullHandling == NullHandling.NULL_IF_NULL) { JExpression e = null; for (HoldingContainer v : inputVariables) { final JExpression isNullExpr; if (v.isReader()) { isNullExpr = JOp.cond(v.getHolder().invoke("isSet"), JExpr.lit(1), JExpr.lit(0)); } else { isNullExpr = v.getIsSet(); } if (e == null) { e = isNullExpr; } else { e = e.mul(isNullExpr); } } if (e != null) { // if at least one expression must be checked, set up the conditional. out = g.declare(resolvedOutput); e = e.eq(JExpr.lit(0)); JConditional jc = sub._if(e); jc._then().assign(out.getIsSet(), JExpr.lit(0)); sub = jc._else(); } } if (out == null) { out = g.declare(resolvedOutput); } // add the subblock after the out declaration. g.getEvalBlock().add(topSub); JVar internalOutput = sub.decl(JMod.FINAL, CodeModelArrowHelper.getHolderType(resolvedOutput, g.getModel()), getReturnName(), JExpr._new(CodeModelArrowHelper.getHolderType(resolvedOutput, g.getModel()))); addProtectedBlock(g, sub, body, inputVariables, workspaceJVars, false); if (sub != topSub || inputVariables.length == 0) { sub.assign(internalOutput.ref("isSet"), JExpr.lit(1));// Assign null if NULL_IF_NULL mode } sub.assign(out.getHolder(), internalOutput); g.getEvalBlock().directStatement(String.format("//---- end of eval portion of %s function. ----//", registeredNames[0])); return out; }
Example 4
Source File: AbstractListField.java From hyperjaxb3 with BSD 2-Clause "Simplified" License | 4 votes |
public JExpression count() { return JOp.cond( field.eq(JExpr._null()), JExpr.lit(0), field.invoke("size") ); }
Example 5
Source File: SingleEnumValueWrappingField.java From hyperjaxb3 with BSD 2-Clause "Simplified" License | 4 votes |
@Override protected JExpression unwrap(JExpression source) { return JOp.cond(source.eq(JExpr._null()), JExpr._null(), source .invoke("value")); }
Example 6
Source File: SingleEnumValueWrappingField.java From hyperjaxb3 with BSD 2-Clause "Simplified" License | 4 votes |
@Override protected JExpression wrap(JExpression target) { return JOp.cond(target.eq(JExpr._null()), JExpr._null(), this.enumClass .staticInvoke("fromValue").arg(target)); }
Example 7
Source File: PluginUtil.java From jaxb2-rich-contract-plugin with MIT License | 4 votes |
public static JExpression nullSafe(final JExpression test, final JExpression source) { return JOp.cond(test.eq(JExpr._null()), JExpr._null(), source); }