ডকুমেন্টেশন মন্তব্যগুলি স্থানীয়ভাবে এক্সকোডে সমর্থিত, দ্রুত সহায়তায় স্মার্টলি রেন্ডারড ডকুমেন্টেশন তৈরি করে (উভয় ⌥প্রতীককে ক্লিক করার সময় এবং দ্রুত সহায়তা পরিদর্শক ⌥⌘2))
সিম্বল ডকুমেন্টেশন মন্তব্যগুলি এখন সমৃদ্ধ খেলার মাঠের মন্তব্যের দ্বারা ব্যবহৃত একই মার্কডাউন সিনট্যাক্সের উপর ভিত্তি করে তৈরি করা হয়েছে , সুতরাং আপনি খেলার মাঠে যা করতে পারেন তা এখন সোর্স কোড ডকুমেন্টেশনে সরাসরি ব্যবহার করা যেতে পারে।
সিনট্যাক্সের সম্পূর্ণ বিবরণের জন্য, মার্কআপ বিন্যাসের রেফারেন্স দেখুন । দ্রষ্টব্য যে সমৃদ্ধ খেলার মাঠের মন্তব্যসমূহ এবং প্রতীক ডকুমেন্টেশনের জন্য সিনট্যাক্সের মধ্যে কিছু বৈষম্য রয়েছে; এগুলি নথিতে নির্দেশিত (উদাহরণস্বরূপ ব্লক কোটগুলি কেবল খেলার মাঠে ব্যবহার করা যেতে পারে)।
নীচে একটি চিহ্ন এবং সিনট্যাক্স উপাদানগুলির একটি তালিকা রয়েছে যা বর্তমানে প্রতীক ডকুমেন্টেশন মন্তব্যের জন্য কাজ করে।
আপডেট
এক্সকোড 7 বিটা 4 ~- Throws: ...
শীর্ষ স্তরের তালিকার আইটেম হিসাবে " " যুক্ত হয়েছে " যা দ্রুত সহায়তায় প্যারামিটারের পাশাপাশি বিবরণ ফিরিয়ে দেয়।
এক্সকোড 7 বিটা 1 Sw সুইফট 2 সহ সিনট্যাক্সে কিছু উল্লেখযোগ্য পরিবর্তন - ডকুমেন্টেশন মন্তব্য এখন মার্কডাউন (খেলার মাঠের মতো) এর উপর ভিত্তি করে।
এক্সকোড 6.3 (6D570) ~ ইনডেন্ট করা পাঠ্যটি এখন কোড ব্লক হিসাবে ফর্ম্যাট করা হয়েছে, পরবর্তী ইনডেন্টেশনগুলি নেস্ট করা হয়েছে। এ জাতীয় কোড ব্লকে ফাঁকা লাইন ছেড়ে যাওয়া সম্ভব বলে মনে হচ্ছে না - এর চেষ্টা করার ফলে ফলাফলটি কোনও অক্ষরের সাথে শেষ লাইনের শেষের দিকে সজ্জিত হবে।
এক্সকোড 6.3 বিটা back ইনলাইন কোডটি এখন ব্যাকটিক্স ব্যবহার করে ডকুমেন্টেশন মন্তব্যে যুক্ত করা যেতে পারে।
সুইফট 2 এর উদাহরণ
/// Text like this appears in "Description".
///
/// Leave a blank line to separate further text into paragraphs.
///
/// You can use bulleted lists (use `-`, `+` or `*`):
///
/// - Text can be _emphasised_
/// - Or **strong**
///
/// Or numbered lists:
///
/// 7. The numbers you use make no difference
/// 0. The list will still be ordered, starting from 1
/// 5. But be sensible and just use 1, 2, 3 etc…
///
/// ---
///
/// More Stuff
/// ==========
///
/// Code
/// ----
///
/// Use backticks for inline `code()`. Indentations of 4 spaces or more will create a code block, handy for example usage:
///
/// // Create an integer, and do nothing with it
/// let myInt = 42
/// doNothing(myInt)
///
/// // Also notice that code blocks scroll horizontally instead of wrapping.
///
/// Links & Images
/// --------------
///
/// Include [links](https://en.wikipedia.org/wiki/Hyperlink), and even images:
///
/// ![Swift Logo](/Users/Stuart/Downloads/swift.png "The logo for the Swift programming language")
///
/// - note: That "Note:" is written in bold.
/// - requires: A basic understanding of Markdown.
/// - seealso: `Error`, for a description of the errors that can be thrown.
///
/// - parameters:
/// - int: A pointless `Int` parameter.
/// - bool: This `Bool` isn't used, but its default value is `false` anyway…
/// - throws: A `BadLuck` error, if you're unlucky.
/// - returns: Nothing useful.
func doNothing(int: Int, bool: Bool = false) throws -> String {
if unlucky { throw Error.BadLuck }
return "Totally contrived."
}
সুইফট 2 এর জন্য সিনট্যাক্স ( মার্কডাউনের ভিত্তিতে )
মন্তব্য স্টাইল
উভয় ///
(ইনলাইন) এবং /** */
(ব্লক) স্টাইলের মন্তব্য ডকুমেন্টেশন মন্তব্য তৈরির জন্য সমর্থিত। আমি ব্যক্তিগতভাবে /** */
মন্তব্যে ভিজ্যুয়াল স্টাইলটি পছন্দ করি , তবে এক্সকোডের স্বয়ংক্রিয় ইনডেন্টেশন অনুলিপি / পেস্ট করার সময় এই মন্তব্য শৈলীর বিন্যাসকে নষ্ট করতে পারে কারণ এটি শীর্ষস্থানীয় সাদা স্থানকে সরিয়ে দেয়। উদাহরণ স্বরূপ:
/**
See sample usage:
let x = method(blah)
*/
আটকানোর সময়, কোড ব্লক ইনডেন্টেশন সরানো হয় এবং এটি আর কোড হিসাবে রেন্ডার করা হয় না:
/**
See sample usage:
let x = method(blah)
*/
এই কারণে, আমি সাধারণত ব্যবহার করি ///
এবং এই উত্তরের অন্যান্য উদাহরণগুলির জন্য এটি ব্যবহার করব।
উপাদানসমূহ অবরুদ্ধ করুন
শিরোনাম:
/// # My Heading
অথবা
/// My Heading
/// ==========
অনুশীর্ষক:
/// ## My Subheading
অথবা
/// My Subheading
/// -------------
অনুভূমিক নিয়ম:
/// ---
আনর্ডারড (বুলেটযুক্ত) তালিকা:
/// - An item
/// - Another item
আপনি ব্যবহার করতে পারেন +
বা *
আনর্ডারড তালিকার এটি সামঞ্জস্য হতে হবে।
আদেশযুক্ত (সংখ্যাযুক্ত) তালিকা:
/// 1. Item 1
/// 2. Item 2
/// 3. Item 3
কোড ব্লক:
/// for item in array {
/// print(item)
/// }
কমপক্ষে চারটি স্পেসের একটি ইন্ডেন্টেশন প্রয়োজন।
ইনলাইন উপাদানসমূহ
জোর দেওয়া (তির্যক):
/// Add like *this*, or like _this_.
শক্তিশালী (সাহসী):
/// You can **really** make text __strong__.
নোট করুন যে আপনি একই উপাদানটিতে অ্যাসিটার্কস ( *
) এবং আন্ডারস্কোর ( _
) মিশ্রণ করতে পারবেন না ।
ইনলাইন কোড:
/// Call `exampleMethod(_:)` to demonstrate inline code.
লিঙ্ক:
/// [Link Text](https://en.wikipedia.org/wiki/Hyperlink)
ছবি:
/// ![Alt Text](http://www.example.com/alt-image.jpg)
URL টি হয় ওয়েব ইউআরএল ("http: //" ব্যবহার করে) বা একটি নিখুঁত ফাইল পাথ URL হতে পারে (আমি কাজ করার জন্য আপেক্ষিক ফাইল পাথ পেতে পারি না)।
সমস্ত ইউআরএল একসাথে, পরিচালনাযোগ্য স্থানে রাখার জন্য লিঙ্ক এবং চিত্রগুলির জন্য ইউআরএলগুলি ইনলাইন উপাদান থেকে পৃথক করা যায়:
/// A [link][1] an an ![image][2]
///
/// ...
///
/// [1]: http://www.example.com
/// [2]: http://www.example.com/image.jpg
কীওয়ার্ড
মার্কডাউন ফর্ম্যাটিংয়ের পাশাপাশি, এক্সকোড দ্রুত সাহায্যে বিশিষ্টভাবে প্রদর্শন করতে অন্যান্য মার্কআপ কীওয়ার্ডগুলি স্বীকৃতি দেয়। এই মার্কআপ কীওয়ার্ডগুলি বেশিরভাগ বিন্যাসটি নেয় - <keyword>:
(ব্যতিক্রমটি হ'ল)parameter
এটিতে কোলনের আগে প্যারামিটারের নামও অন্তর্ভুক্ত থাকে), যেখানে কীওয়ার্ডটি নিজেই বড় হাতের / ছোট হাতের অক্ষরের সংমিশ্রণে রচনা করা যায়।
প্রতীক বিভাগের কীওয়ার্ড
নীচের কীওয়ার্ডগুলি সহায়তা বিবরণীতে "বিবরণ" বিভাগের নীচে এবং "ঘোষিত ইন" বিভাগের উপরে বিশিষ্ট বিভাগ হিসাবে প্রদর্শিত হবে। অন্তর্ভুক্ত করা হলে, তাদের অর্ডার নীচে প্রদর্শিত হিসাবে ঠিক করা হয়েছে যদিও আপনি আপনার মন্তব্যে আপনার পছন্দ অনুযায়ী যে কোনও ক্রমে সেগুলি অন্তর্ভুক্ত করতে পারেন।
মার্কআপ ফরম্যাটিং রেফারেন্সের সিম্বল সেকশন কমান্ড বিভাগে বিভাগের কীওয়ার্ড এবং তাদের উদ্দেশ্যে ব্যবহারের সম্পূর্ণ নথিভুক্ত তালিকা দেখুন ।
/// - parameters:
/// - <#parameter name#>:
/// - <#parameter name#>:
/// - throws:
/// - returns:
বিকল্পভাবে, আপনি প্রতিটি প্যারামিটারটি এভাবে লিখতে পারেন:
/// - parameter <#parameter name#>:
প্রতীক বিবরণ ক্ষেত্র কীওয়ার্ড
সহায়তার দর্শকের "বিবরণ" বিভাগের শিরোনামে নিম্নলিখিত কীওয়ার্ডগুলির তালিকা বোল্ড শিরোনাম হিসাবে প্রদর্শিত হবে । আপনার "বাক্য" বিভাগের বাকী অংশের মতো আপনি এগুলি যেভাবে লিখেছেন তাতে সেগুলি উপস্থিত হবে।
এরিকা সাদুনের দুর্দান্ত ব্লগ নিবন্ধ থেকে পুরো তালিকাটি প্যারাফ্রেস করা হয়েছে । মার্কআপ ফরম্যাটিং রেফারেন্সের সিম্বল ডিসক্রিপশন ফিল্ড কমান্ড সেকশনে কীওয়ার্ডগুলির সম্পূর্ণ নথিভুক্ত তালিকা এবং তাদের উদ্দেশ্যে ব্যবহারগুলি দেখুন ।
গুণাবলী:
/// - author:
/// - authors:
/// - copyright:
/// - date:
উপস্থিতি:
/// - since:
/// - version:
সতর্কতা:
/// - attention:
/// - important:
/// - note:
/// - remark:
/// - warning:
উন্নয়ন রাজ্য:
/// - bug:
/// - todo:
/// - experiment:
বাস্তবায়নের গুণাবলী:
/// - complexity:
কার্যকরী শব্দার্থক:
/// - precondition:
/// - postcondition:
/// - requires:
/// - invariant:
প্রতিনির্দেশ:
/// - seealso:
ডকুমেন্টেশন রফতানি করা হচ্ছে
এইচটিএমএল ডকুমেন্টেশন (অ্যাপলের নিজস্ব ডকুমেন্টেশন নকল করার জন্য ডিজাইন করা) জাজি , একটি মুক্ত-উত্স কমান্ড-লাইন ইউটিলিটি ব্যবহার করে ইনলাইন ডকুমেন্টেশন থেকে তৈরি করা যেতে পারে ।
$ [sudo] gem install jazzy
$ jazzy
Running xcodebuild
Parsing ...
building site
jam out ♪♫ to your fresh new docs in `docs`
কনসোল উদাহরণ এই এনএসএইচপিস্টার নিবন্ধ থেকে নেওয়া