/** * @since 2.3 */ @Check public void checkParameterListIsNotEmpty(Variable variable) { if (variable.isExpectingParameters()) { if (variable.getParameters().isEmpty()) { error("Parameter list may not be empty", null); } } }
public void validateParameters(Variable variable, ValidationMessageAcceptor validationMessageAcceptor) { if (!canHaveParameters()) { if (variable.getParameters().size() > 0) validationMessageAcceptor.acceptError(getUnexpectedParametersMessage(), variable, TemplatesPackage.Literals.VARIABLE__PARAMETERS, ValidationMessageAcceptor.INSIGNIFICANT_INDEX, null); } if (hasMandatoryParameters()) { if (variable.getParameters().isEmpty()) { validationMessageAcceptor.acceptError(getMandatorParametersMessage(), variable, TemplatesPackage.Literals.VARIABLE__TYPE, ValidationMessageAcceptor.INSIGNIFICANT_INDEX, null); } } }
if (contextType != null) { Iterator<TemplateVariableResolver> resolvers = Iterators.filter(contextType.resolvers(), TemplateVariableResolver.class); String type = variable.getType(); if (type == null) type = variable.getName(); while(resolvers.hasNext()) { final TemplateVariableResolver resolver = resolvers.next();
public EvaluatedTemplate(Codetemplate template) { TemplateBody body = template.getBody(); StringBuilder buffer = new StringBuilder(); StringBuilder original = new StringBuilder(); mappedOffsetHints = Lists.newArrayList(); int lastOffset = 0; for(TemplatePart part: body.getParts()) { ICompositeNode node = NodeModelUtils.getNode(part); if (node != null) { mappedOffsetHints.add(Tuples.create(buffer.length(), node.getTotalOffset())); lastOffset = node.getTotalOffset() + node.getTotalLength(); original.append(node.getText()); if (part instanceof Literal) { buffer.append(((Literal) part).getValue()); } else if (part instanceof Dollar) { buffer.append("$"); } else if (part instanceof Variable) { if (((Variable) part).getName() != null) { buffer.append(((Variable) part).getName()); } } } } mappedOffsetHints.add(Tuples.create(buffer.length(), lastOffset)); evaluatedResult = buffer.toString(); originalTemplate = original.toString(); }
@Override public void completeVariable_Parameters(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { if ((mode & NORMAL) != 0) { VariableData data = new VariableData(model); if (data.doCreateProposals()) { String variableType = data.variable.getType(); if ("CrossReference".equals(variableType)) { List<CrossReference> crossReferences = GrammarUtil.containedCrossReferences(data.rule); for(CrossReference crossReference: crossReferences) { EReference reference = GrammarUtil.getReference(crossReference); String fqn = reference.getEContainingClass().getName() + "." + reference.getName(); acceptor.accept(createCompletionProposal(fqn, context)); acceptor.accept(createCompletionProposal("'" + fqn + "'", context)); } } else if ("Enum".equals(variableType)) { } super.completeVariable_Parameters(model, assignment, context, acceptor); } } }
if (variable != model && variable.getName() != null) { String proposalText = variable.getName(); StyledString displayText = new StyledString(proposalText).append(" - existing variable", StyledString.QUALIFIER_STYLER); if (variable.getType() != null) displayText = displayText.append(" of type " + variable.getType(), StyledString.QUALIFIER_STYLER); ICompletionProposal proposal = createCompletionProposal(proposalText, displayText, null, context); acceptor.accept(proposal);
if (defaultResolvers.contains(variable.getName())) { List<INode> nameNodes = NodeModelUtils.findNodesForFeature(variable, TemplatesPackage.Literals.VARIABLE__NAME); for(INode nameNode: nameNodes) {
/** * @since 2.3 */ @Check public void checkParameterListIsNotEmpty(Variable variable) { if (variable.isExpectingParameters()) { if (variable.getParameters().isEmpty()) { error("Parameter list may not be empty", null); } } }