avoid constructing TypeList's on-the-fly for ListVal's with fixed types

This commit is contained in:
Vern Paxson 2023-07-13 11:47:14 -07:00
parent 1d5bc841e0
commit 6b0d595dae
3 changed files with 16 additions and 3 deletions

View file

@ -1563,6 +1563,12 @@ ListVal::ListVal(TypeTag t) : Val(make_intrusive<TypeList>(t == TYPE_ANY ? nullp
tag = t;
}
ListVal::ListVal(TypeListPtr tl, std::vector<ValPtr> _vals) : Val(std::move(tl))
{
tag = TYPE_ANY;
vals = std::move(_vals);
}
ValPtr ListVal::SizeVal() const
{
return val_mgr->Count(vals.size());