diff --git a/src/Val.cc b/src/Val.cc index bf86360b70..e3574116cc 100644 --- a/src/Val.cc +++ b/src/Val.cc @@ -1277,6 +1277,8 @@ FileVal::FileVal(FilePtr f) : Val(make_intrusive(base_type(TYPE_STRING assert(file_val->GetType()->Tag() == TYPE_STRING); } +FilePtr FileVal::AsFilePtr() const { return file_val; } + ValPtr FileVal::SizeVal() const { return make_intrusive(file_val->Size()); } void FileVal::ValDescribe(ODesc* d) const { file_val->Describe(d); } diff --git a/src/Val.h b/src/Val.h index a74f68f8d6..1267f602ec 100644 --- a/src/Val.h +++ b/src/Val.h @@ -609,6 +609,8 @@ class FileVal final : public Val { public: explicit FileVal(FilePtr f); + FilePtr AsFilePtr() const; + ValPtr SizeVal() const override; File* Get() const { return file_val.get(); }