in src/main/java/org/ini4j/ConfigParser.java [489:521]
protected void resolve(StringBuilder buffer, Ini.Section owner, Map<String, String> vars) throws InterpolationMissingOptionException
{
Matcher m = EXPRESSION.matcher(buffer);
while (m.find())
{
String optionName = m.group(G_OPTION);
String value = owner.get(optionName);
if (value == null)
{
value = vars.get(optionName);
}
if (value == null)
{
value = _defaults.get(optionName);
}
if ((value == null) && (_defaultSection != null))
{
value = _defaultSection.get(optionName);
}
if (value == null)
{
throw new InterpolationMissingOptionException(optionName);
}
buffer.replace(m.start(), m.end(), value);
m.reset(buffer);
}
}