diff options
Diffstat (limited to 'tools/standalone_miri/hir_sim.cpp')
-rw-r--r-- | tools/standalone_miri/hir_sim.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/tools/standalone_miri/hir_sim.cpp b/tools/standalone_miri/hir_sim.cpp index ef6c4df1..d549fa1d 100644 --- a/tools/standalone_miri/hir_sim.cpp +++ b/tools/standalone_miri/hir_sim.cpp @@ -90,6 +90,25 @@ size_t HIR::TypeRef::get_size(size_t ofs) const } throw ""; } +bool HIR::TypeRef::has_slice_meta() const +{ + if( this->wrappers.size() == 0 ) + { + if(this->inner_type == RawType::Composite) + { + // TODO: Handle metadata better + return false; + } + else + { + return (this->inner_type == RawType::Str); + } + } + else + { + return (this->wrappers[0].type == TypeWrapper::Ty::Slice); + } +} HIR::TypeRef HIR::TypeRef::get_inner() const { |