Skip to content

Commit

Permalink
fix(plc4cs): fix arrays access
Browse files Browse the repository at this point in the history
  • Loading branch information
sruehl committed Jun 1, 2022
1 parent 06a9b34 commit 68a276e
Showing 1 changed file with 4 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -928,7 +928,7 @@ private String toStaticCallParseExpression(Field field, TypeReference resultType
sb.append(")");
if (variableLiteral.getIndex().isPresent()) {
// TODO: If this is a byte typed field, this needs to be an array accessor instead.
sb.append(".get(").append(variableLiteral.getIndex()).append(")");
sb.append(".get(").append(variableLiteral.getIndex().orElseThrow()).append(")");
}
return tracer + sb.toString();
}
Expand All @@ -951,7 +951,7 @@ private String toFunctionCallParseExpression(Field field, TypeReference resultTy
}
if (variableLiteral.getIndex().isPresent()) {
// TODO: If this is a byte typed field, this needs to be an array accessor instead.
sb.append(".get(").append(variableLiteral.getIndex()).append(")");
sb.append(".get(").append(variableLiteral.getIndex().orElseThrow()).append(")");
}
return tracer + sb.toString() + variableLiteral.getChild().map(child -> "." + toVariableExpressionRest(field, resultType, child)).orElse("");
}
Expand Down Expand Up @@ -1127,10 +1127,10 @@ private String toVariableExpressionRest(Field field, TypeReference resultType, V
String variableLiteralName = variableLiteral.getName();
if (variableLiteralName.equals("length")) {
tracer = tracer.dive("length");
return tracer + variableLiteralName + "()" + ((variableLiteral.getIndex().isPresent() ? ".get(" + variableLiteral.getIndex() + ")" : "") +
return tracer + variableLiteralName + "()" + ((variableLiteral.getIndex().isPresent() ? ".get(" + variableLiteral.getIndex().orElseThrow() + ")" : "") +
variableLiteral.getChild().map(child -> "." + toVariableExpressionRest(field, resultType, child)).orElse(""));
}
return tracer + "get" + WordUtils.capitalize(variableLiteralName) + "()" + ((variableLiteral.getIndex().isPresent() ? ".get(" + variableLiteral.getIndex() + ")" : "") +
return tracer + "get" + WordUtils.capitalize(variableLiteralName) + "()" + ((variableLiteral.getIndex().isPresent() ? ".get(" + variableLiteral.getIndex().orElseThrow() + ")" : "") +
variableLiteral.getChild().map(child -> "." + toVariableExpressionRest(field, resultType, child)).orElse(""));
}

Expand Down

0 comments on commit 68a276e

Please sign in to comment.