# \`#:methods gen:custom-write\` replacement in typed/racket?

**URL:** <https://racket.discourse.group/t/methods-gen-custom-write-replacement-in-typed-racket/521>\
**Category:** Questions & Answers\
**Created:** [January 3, 2022, 9:11pm UTC](https://racket.discourse.group/t/methods-gen-custom-write-replacement-in-typed-racket/521 "2022-01-03T21:11:58Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![dannypsnl](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/dannypsnl/32/917_2.png) [@dannypsnl](https://racket.discourse.group/u/dannypsnl)\
**Post date:** [January 3, 2022, 9:11pm UTC](https://racket.discourse.group/t/methods-gen-custom-write-replacement-in-typed-racket/521/1 "2022-01-03T21:11:58Z")

</div>

Probably silly, but I don't want to affect any existing code that relies on `gen:custom-write`

```scheme
(struct vec3 (x y z)
  #:methods gen:custom-write
  [(define (write-proc v port mode)
     (fprintf port "~a ~a ~a" (vec3-x v) (vec3-y v) (vec3-z v)))]
  #:transparent
  #:mutable)

```

---

<div class="post-metadata">

**Author:** ![capfredf](https://yyz2.discourse-cdn.com/free1/user_avatar/racket.discourse.group/capfredf/32/935_2.png) [@capfredf](https://racket.discourse.group/u/capfredf)\
**Post date:** [January 4, 2022, 6:58pm UTC](https://racket.discourse.group/t/methods-gen-custom-write-replacement-in-typed-racket/521/2 "2022-01-04T18:58:02Z")

</div>

`prop:custom-write` should work
