public String readConstant(String desc) throws FHIRLexerException { if (!isStringConstant()) throw error("Found "+current+" expecting \"["+desc+"]\""); return processConstant(take()); }
private void parseParameter(StructureMapGroupRuleTargetComponent target, FHIRLexer lexer) throws FHIRLexerException, FHIRFormatError { if (!lexer.isConstant(true)) { target.addParameter().setValue(new IdType(lexer.take())); } else if (lexer.isStringConstant()) target.addParameter().setValue(new StringType(lexer.readConstant("??"))); else { target.addParameter().setValue(readConstant(lexer.take(), lexer)); } }
private Base processConstant(FHIRLexer lexer) throws FHIRLexerException { if (lexer.isStringConstant()) { return new StringType(processConstantString(lexer.take(), lexer)).noExtensions(); } else if (Utilities.isInteger(lexer.getCurrent())) { return new IntegerType(lexer.take()).noExtensions(); } else if (Utilities.isDecimal(lexer.getCurrent())) { return new DecimalType(lexer.take()).noExtensions(); } else if (Utilities.existsInList(lexer.getCurrent(), "true", "false")) { return new BooleanType(lexer.take()).noExtensions(); } else if (lexer.getCurrent().equals("{}")) { lexer.take(); return null; } else if (lexer.getCurrent().startsWith("%") || lexer.getCurrent().startsWith("@")) { return new FHIRConstant(lexer.take()); } else throw lexer.error("Invalid Constant "+lexer.getCurrent()); }
boolean isString = lexer.isStringConstant(); result.setConstant(processConstant(lexer)); result.setKind(Kind.Constant); if (!isString && !lexer.done() && (result.getConstant() instanceof IntegerType || result.getConstant() instanceof DecimalType) && (lexer.isStringConstant() || lexer.hasToken("year", "years", "month", "months", "week", "weeks", "day", "days", "hour", "hours", "minute", "minutes", "second", "seconds", "millisecond", "milliseconds"))) {
public String readConstant(String desc) throws FHIRLexerException { if (!isStringConstant()) throw error("Found "+current+" expecting \"["+desc+"]\""); return processConstant(take()); }
private void parseParameter(StructureMapGroupRuleTargetComponent target, FHIRLexer lexer) throws FHIRLexerException, FHIRFormatError { if (!lexer.isConstant(true)) { target.addParameter().setValue(new IdType(lexer.take())); } else if (lexer.isStringConstant()) target.addParameter().setValue(new StringType(lexer.readConstant("??"))); else { target.addParameter().setValue(readConstant(lexer.take(), lexer)); } }
private Base processConstant(FHIRLexer lexer) throws FHIRLexerException { if (lexer.isStringConstant()) { return new StringType(processConstantString(lexer.take(), lexer)).noExtensions(); } else if (Utilities.isInteger(lexer.getCurrent())) { return new IntegerType(lexer.take()).noExtensions(); } else if (Utilities.isDecimal(lexer.getCurrent())) { return new DecimalType(lexer.take()).noExtensions(); } else if (Utilities.existsInList(lexer.getCurrent(), "true", "false")) { return new BooleanType(lexer.take()).noExtensions(); } else if (lexer.getCurrent().equals("{}")) { lexer.take(); return null; } else if (lexer.getCurrent().startsWith("%") || lexer.getCurrent().startsWith("@")) { return new FHIRConstant(lexer.take()); } else throw lexer.error("Invalid Constant "+lexer.getCurrent()); }
boolean isString = lexer.isStringConstant(); result.setConstant(processConstant(lexer)); result.setKind(Kind.Constant); if (!isString && !lexer.done() && (result.getConstant() instanceof IntegerType || result.getConstant() instanceof DecimalType) && (lexer.isStringConstant() || lexer.hasToken("year", "years", "month", "months", "week", "weeks", "day", "days", "hour", "hours", "minute", "minutes", "second", "seconds", "millisecond", "milliseconds"))) {