# Iterating over an Enum

**URL:** https://discourse.julialang.org/t/iterating-over-an-enum/16502
**Category:** General Usage
**Tags:** enum
**Created:** [October 18, 2018, 5:39pm UTC](https://discourse.julialang.org/t/iterating-over-an-enum/16502 "2018-10-18T17:39:04Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![grahamstark](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/grahamstark/32/5200_2.png) [@grahamstark](https://discourse.julialang.org/u/grahamstark)
#### Post date: [October 18, 2018, 5:39pm UTC](https://discourse.julialang.org/t/iterating-over-an-enum/16502/1 "2018-10-18T17:39:04Z")

</div>

Hi,

quick question that I can’t see an answer to in the docs: how can I iterate over the members of an Enum?  
So, I have:

```julia
@enum DistanceFunctionType chi_square d_and_s_type_a d_and_s_type_b 

```

and I want to write something like:

```julia
for method in DistanceFunctionType
   [do stuff..]
end

```

but that’s not allowed. Is there an idiomatic way to do this?

I’m new to Julia so apologies if this has in fact an obvious answer; I think I’ve searched all the usual places.

thanks,

Graham

---

<div class="post-metadata">

### Author: ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)
#### Post date: [October 18, 2018, 6:24pm UTC](https://discourse.julialang.org/t/iterating-over-an-enum/16502/2 "2018-10-18T18:24:22Z")

</div>

```julia
help?> @enum
  @enum EnumName[::BaseType] value1[=x] value2[=y]

...

  To list all the instances of an enum use instances, e.g.

  julia> instances(Fruit)
  (apple::Fruit = 1, orange::Fruit = 2, kiwi::Fruit = 3)

```

```julia
julia> for m in instances(DistanceFunctionType)
           @show m
       end
m = chi_square::DistanceFunctionType = 0
m = d_and_s_type_a::DistanceFunctionType = 1
m = d_and_s_type_b::DistanceFunctionType = 2

```

---

<div class="post-metadata">

### Author: ![grahamstark](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/grahamstark/32/5200_2.png) [@grahamstark](https://discourse.julialang.org/u/grahamstark)
#### Post date: [October 19, 2018, 9:39am UTC](https://discourse.julialang.org/t/iterating-over-an-enum/16502/3 "2018-10-19T09:39:33Z")

</div>

Ah! Got it, thanks.
