# Efficient reflection on structs

**URL:** https://discourse.julialang.org/t/efficient-reflection-on-structs/55278
**Category:** Performance
**Created:** [February 14, 2021, 9:24pm UTC](https://discourse.julialang.org/t/efficient-reflection-on-structs/55278 "2021-02-14T21:24:53Z")
**Posts on this page:** 1
**Showing post:** 41

<div class="post-metadata">

### Author: ![Guillaume\_Leclerc](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/guillaume_leclerc/32/21940_2.png) [@Guillaume\_Leclerc](https://discourse.julialang.org/u/Guillaume_Leclerc)
#### Post date: [February 16, 2021, 5:20pm UTC](https://discourse.julialang.org/t/efficient-reflection-on-structs/55278/41 "2021-02-16T17:20:02Z")

</div>

> [@JeffreySarnoff](#):
>
> `isa` is a _built-in function_ – none of those functions are overrideable.  
> You are welcome to fashion your own, using `isa` and override that.  
> Your backstop would be something like this.
> 
> ```julia
> isit(x, ::Type{T}) where T = isa(x, T)
> 
> ```

Does that mean I’m not allowed to call implementations of functions that accept `T` with a `Wrapper{T}` as an argument ?

---

_[View the full topic](https://discourse.julialang.org/t/efficient-reflection-on-structs/55278)._
