use of org.eclipse.titan.designer.AST.TTCN3.values.expressions.ExpressionStruct in project titan.EclipsePlug-ins by eclipse.
the class Disconnect_Statement method generateCode.
@Override
public /**
* {@inheritDoc}
*/
void generateCode(final JavaGenData aData, final StringBuilder source) {
// FIXME this is actually more complex
final ExpressionStruct expression = new ExpressionStruct();
// FIXME generate code for translation
expression.expression.append("TTCN_Runtime.disconnect_port(");
componentReference1.generateCodeExpression(aData, expression, true);
expression.expression.append(", ");
// FIXME actually _portref and based on component type
portReference1.generateCode(aData, expression);
expression.expression.append(".get_name(), ");
componentReference2.generateCodeExpression(aData, expression, true);
expression.expression.append(", ");
// FIXME actually _portref and based on component type
portReference2.generateCode(aData, expression);
expression.expression.append(".get_name()");
expression.expression.append(")");
expression.mergeExpression(source);
}
use of org.eclipse.titan.designer.AST.TTCN3.values.expressions.ExpressionStruct in project titan.EclipsePlug-ins by eclipse.
the class Done_Statement method generateCode.
@Override
public /**
* {@inheritDoc}
*/
void generateCode(final JavaGenData aData, final StringBuilder source) {
final ExpressionStruct expression = new ExpressionStruct();
generateCodeExpression(aData, expression);
PortGenerator.generateCodeStandalone(aData, source, expression.expression.toString(), getLocation());
}
use of org.eclipse.titan.designer.AST.TTCN3.values.expressions.ExpressionStruct in project titan.EclipsePlug-ins by eclipse.
the class Function_Instance_Statement method generateCode.
@Override
public /**
* {@inheritDoc}
*/
void generateCode(final JavaGenData aData, final StringBuilder source) {
source.append("\t\t");
final ExpressionStruct expression = new ExpressionStruct();
reference.generateConstRef(aData, expression);
expression.mergeExpression(source);
}
use of org.eclipse.titan.designer.AST.TTCN3.values.expressions.ExpressionStruct in project titan.EclipsePlug-ins by eclipse.
the class Getreply_Statement method generateCode.
@Override
public /**
* {@inheritDoc}
*/
void generateCode(final JavaGenData aData, final StringBuilder source) {
final ExpressionStruct expression = new ExpressionStruct();
generateCodeExpression(aData, expression);
PortGenerator.generateCodeStandalone(aData, source, expression.expression.toString(), getLocation());
}
use of org.eclipse.titan.designer.AST.TTCN3.values.expressions.ExpressionStruct in project titan.EclipsePlug-ins by eclipse.
the class Int2Enum_Statement method generateCode.
@Override
public void generateCode(final JavaGenData aData, final StringBuilder source) {
final ExpressionStruct valueExpression = new ExpressionStruct();
value.generateCodeExpression(aData, valueExpression, true);
final ExpressionStruct referenceExpression = new ExpressionStruct();
reference.generateCode(aData, referenceExpression);
boolean isOptional = false;
final Assignment assignment = reference.getRefdAssignment(CompilationTimeStamp.getBaseTimestamp(), false);
if (assignment.getType(CompilationTimeStamp.getBaseTimestamp()).fieldIsOptional(reference.getSubreferences())) {
isOptional = true;
}
source.append(valueExpression.preamble);
source.append(referenceExpression.preamble);
source.append(MessageFormat.format("{0}{1}.int2enum({2});\n", referenceExpression.expression, isOptional ? ".get()" : "", valueExpression.expression));
source.append(valueExpression.postamble);
source.append(referenceExpression.postamble);
}
Aggregations