বিটস্ট্রিং প্রোগ্রামারদের বাইনারি ডেটা নিয়ে কার্যকরভাবে কাজ করার সুযোগ দেয়।
আপনি <<>> স্পেশাল ফর্ম ব্যবহার করে বিটস্ট্রিং খুব সুন্দরভাবে তৈরি করতে পারেন।
<<0b101::3>> == <<5::3>> and <<5::3>> == <<5::size(3)>>
# => true
first = <<0b110::3>>
second = <<0b001::3>>
combined = <<first::bitstring, second::bitstring>>
# => <<49::size(6)>>
আপনি <<>> ফর্ম দিয়ে ম্যাচ করতে পারেন এবং সেই ম্যাচ ব্যবহার করে আরও বাইনারি ডেটা বিশ্লেষণ করতে পারেন।
<<data_size::32, count::size(data_size)>> = <<8::32, 3::8>>
# => <<0, 0, 0, 8, 3>>
data_size
# => 8
count
# => 3
আপনি ::bitstring ব্যবহার করে বিটস্ট্রিংয়ের বাকি অংশের সাথে ম্যাচ করতে পারেন।
<<_::32, remainder::bitstring>> = <<8::32, 3::8>>
# => <<0, 0, 0, 8, 3>>
remainder
# => <<3>>
বাইনারি ডেটা টাইপ হলো এক বিশেষ ধরনের বিটস্ট্রিং, যেখানে বিটের সংখ্যা ৮ দিয়ে নিঃশেষে বিভাজ্য হয়।
Elixir বিভিন্ন রূপে ইন্টিজার লিটারেল নিয়ে কাজ করার জন্য সিনট্যাকটিক সুগার দেয়:
0b1000001 = ?A = 65