37 const word& entryName,
39 const dictionary&
dict,
40 const word& redirectType,
44 word modelType(redirectType);
46 const dictionary* coeffs = (eptr ? eptr->dictPtr() :
nullptr);
68 Istream& is = eptr->stream();
72 if (!firstToken.isWord())
75 is.putBack(firstToken);
77 const Type constValue = pTraits<Type>(is);
79 return autoPtr<Function1<Type>>
81 new Function1Types::Constant<Type>(entryName, constValue)
86 modelType = firstToken.wordToken();
93 if (modelType.empty())
100 <<
"Missing or invalid Function1 entry: "
118 coeffs = &
dict.optionalSubDict(kw +
"Coeffs", keyType::LITERAL);
122 auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType);
124 if (!cstrIter.found())
127 <<
"Unknown Function1 type "
128 << modelType <<
" for " << entryName
129 <<
"\n\nValid Function1 types :\n"
130 << dictionaryConstructorTablePtr_->sortedToc() <<
nl
134 return cstrIter()(entryName, *coeffs);
142 const word& entryName,
144 const word& redirectType,
151 dict.findEntry(entryName, keyType::LITERAL),
163 const word& entryName,
164 std::initializer_list<std::pair<const char*,int>> compat,
166 const word& redirectType,
173 dict.findCompat(entryName, compat, keyType::LITERAL),
185 const word& entryName,
198 const word& entryName,
200 const word& redirectType