Binary segment type specifiers question

When I hit tab in iex it doesn’t include bits or bytes on the list:

iex(69)> <<a::
big          binary       bitstring    float        integer      little       
native       signed       size/1       unit/1       unsigned     utf16        
utf32        utf8

Are there any other type specifiers that aren’t on the official list?

Also:

It seems like bits/bitstring and bytes/binary type specifiers only work with pattern matching, do I have that right?

I think I figure out my own question. bitstrings have to be bitstrings, turns out.


iex(111)> x = <<34>>
"\""
iex(112)> <<x::bitstring>>
"\""
iex(113)>