রাস্ট স্ট্রাক্ট জেনারেটর
রাস্ট স্ট্রাক্ট জেনারেটর একটি নমুনা থেকে শুরুর বিন্দু দেয়; কোন ফিল্ড সত্যিকার অর্থে ঐচ্ছিক তা এপিআইয়ের নিজস্ব স্কিমাই বলে দেয়।
🔒 এই টুলটি সম্পূর্ণভাবে আপনার ব্রাউজারে চলে। আপনার ফাইল কখনও সার্ভারে আপলোড করা হয় না।
ডেভেলপার
রাস্ট স্ট্রাক্ট জেনারেটর
শুধু ফ্রন্টএন্ড প্রিভিউ — কোনো আপলোড বা বাহ্যিক সেবা নেই।
রাস্ট স্ট্রাক্ট
#[derive(Serialize, Deserialize, Debug)]-সহ তিনটি নেস্টেড স্ট্রাক্ট, userId থেকে user_id নামান্তরিত, এবং email-কে Option<String> হিসেবে টাইপ করা হয়েছে কারণ নমুনায় এটি null ছিল।
রাস্ট স্ট্রাক্ট জেনারেটর যেভাবে কাজ করে
- একটি প্রতিনিধিত্বমূলক জেসন নমুনা পেস্ট করুন — যেখানে প্রতিটি ঐচ্ছিক ফিল্ড পূরণ করা আছে, শুধু ন্যূনতম কেস নয়।
- ডিরাইভ এবং serde rename অ্যাট্রিবিউট দিয়ে ফিল্ডগুলো snake_case-এ পুনর্নামকরণ করা হবে কিনা তা বেছে নিন।
- স্ট্রাক্টগুলো আপনার ক্রেটে কপি করুন এবং এপিআই আসলে কী নিশ্চয়তা দেয় তার সাথে Option টাইপ মিলিয়ে দেখুন।
FAQ
কিছু ফিল্ড কেন Option?
কারণ নমুনায় সেখানে null ছিল, অথবা ফিল্ডটি অনুপস্থিত ছিল। আপনার নমুনায় সবসময় উপস্থিত থাকা একটি ফিল্ড সাধারণ টাইপ হিসেবে তৈরি হবে, যা এপিআই প্রথমবার এটি বাদ দিলে ডিসিরিয়ালাইজেশনে প্যানিক করবে।
একটি জেসন নমুনা কি সঠিক টাইপ দেয়?
এটি সেই নমুনার সাথে সামঞ্জস্যপূর্ণ টাইপ দেয়। কাকতালীয়ভাবে ছোট ইন্টিজার i64 হয়ে যায়, এবং একটি ফিল্ড যা একটি রেসপন্সে স্ট্রিং আর অন্যটিতে নম্বর, তা ধরা পড়বে না। এপিআইয়ের স্কিমার সাথে মিলিয়ে দেখুন।
snake_case পুনর্নামকরণ সম্পর্কে কী?
রাস্ট কনভেনশনে snake_case ফিল্ড দরকার, যেখানে বেশিরভাগ জেসন এপিআই camelCase ব্যবহার করে। serde rename অ্যাট্রিবিউট তৈরি করা ম্যানুয়াল ম্যাপিং লেয়ার ছাড়াই উভয় পক্ষকে ইডিয়োম্যাটিক রাখে।
তুলনা
| ফিচার | Online Tool Store | একটি সিএলআই স্ক্রিপ্ট | একটি আইডিই প্লাগইন |
|---|---|---|---|
| serde ডিরাইভ অন্তর্ভুক্ত | ✓ | ✗ | ✓ |
| নালযোগ্যর জন্য Option | ✓ | ✗ | ✓ |
| কিছুই আপলোড হয় না | ✓ | লোকাল | ✗ |
| ইনস্টলেশন লাগে না | ✓ | ✗ | ✓ |
রাস্ট স্ট্রাক্ট জেনারেটর একটি নমুনা থেকে শুরুর বিন্দু দেয়; কোন ফিল্ড সত্যিকার অর্থে ঐচ্ছিক তা এপিআইয়ের নিজস্ব স্কিমাই বলে দেয়।