बिटस्ट्रिंग की मदद से प्रोग्रामर बाइनरी डेटा के साथ प्रभावी ढंग से काम कर पाते हैं।
आप <<>> स्पेशल फॉर्म की मदद से बिटस्ट्रिंग बड़े सुंदर तरीके से बना सकते हैं।
<<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>>
बाइनरी डेटा टाइप एक खास तरह की बिटस्ट्रिंग होता है, जिसमें बिट्स की संख्या 8 से विभाज्य होती है।
Elixir अलग-अलग रूपों वाले पूर्णांक लिटरल के साथ काम करने के लिए सिंटैक्टिक शुगर देता है:
0b1000001 = ?A = 65