Elixir 1.7

Kernel.ParallelCompiler




elixir

Kernel.ParallelCompiler

एक मॉड्यूल समानांतर में फाइलों को संकलित करने और आवश्यक करने के लिए जिम्मेदार है।

सारांश

कार्य

async(fun)

समानांतर संकलन के लिए एक कार्य शुरू करता है

संकलन (फ़ाइलें, विकल्प \\ [])

दी गई फाइलों को संकलित करता है

compile_to_path (फ़ाइलें, पथ, विकल्प \\ [])
आवश्यकता (फ़ाइलें, विकल्प \\ [])

दी गई फ़ाइलों को समानांतर में आवश्यकता है

कार्य

async (मज़ा) (1.6.0 के बाद से)

समानांतर संकलन के लिए एक कार्य शुरू करता है।

यदि आपके पास एक फ़ाइल है जिसे समानांतर में अन्य मॉड्यूल संकलित करने की आवश्यकता है, तो स्पॉन्डेड प्रक्रियाओं को संकलक वातावरण के बारे में पता होना चाहिए। यह फ़ंक्शन एक डेवलपर को एक कार्य बनाने की अनुमति देता है जो उन वातावरणों से अवगत है।

अधिक जानकारी के लिए Task.async/1 देखें। Task.await/1 पर कॉल करके Task.await/1 गए कार्य का हमेशा इंतजार करना चाहिए

संकलन (फ़ाइलें, विकल्प \\ []) (1.6.0 से)

दी गई फाइलों को संकलित करता है।

उन फ़ाइलों को समानांतर में संकलित किया जाता है और स्वचालित रूप से उनके बीच निर्भरता का पता लगा सकता है। एक बार जब एक निर्भरता पाई जाती है, तो वर्तमान फ़ाइल को तब तक संकलित किया जाता है जब तक कि निर्भरता हल नहीं हो जाती।

यह {:ok, modules, warnings} या {:error, errors, warnings}

दोनों त्रुटियाँ और चेतावनियाँ फ़ाइल, लाइन और स्वरूपित त्रुटि / चेतावनी वाले तीन तत्व tuples की एक सूची है।

विकल्प

  • :each_file प्रत्येक_फाइल - संकलित प्रत्येक फ़ाइल के लिए, फ़ाइल पास करने वाले कॉलबैक को आमंत्रित करता है

  • :each_long_compilation प्रत्येक_लॉन्ग_कंप्लीशन - प्रत्येक फ़ाइल के लिए, जो दिए गए टाइमआउट से अधिक समय लेती है (देखें :long_compilation_threshold विकल्प) संकलन करने के लिए, अपने तर्क के रूप में फाइल पास करने वाली इस कॉलबैक को लागू करें

  • :each_module प्रत्येक_मॉड्यूल - संकलित प्रत्येक मॉड्यूल के लिए, फ़ाइल, मॉड्यूल और मॉड्यूल :each_module पास कॉलबैक को आमंत्रित करता है

  • :each_cycle - दिए गए फ़ाइलों के संकलित होने के बाद, इस फ़ंक्शन को आमंत्रित करता है जो संकलन के लिए संभावित रूप से अधिक फ़ाइलों के साथ एक सूची लौटाता है

  • :long_compilation_threshold - के बाद टाइमआउट (सेकंड में) :each_long_compilation कॉलबैक को आमंत्रित किया जाता है; 15 लिए चूक

  • :dest - BEAM फ़ाइलों के लिए गंतव्य निर्देशिका। files/2 का उपयोग करते समय, यह जानकारी केवल मेमोरी में लोड होने से पहले BEAM फ़ाइलों को ठीक से एनोटेट करने के लिए उपयोग की जाती है। यदि आप चाहते हैं कि फ़ाइल को वास्तव में लिखा जाना चाहिए, तो इसके बजाय compile_to_path/3 उपयोग करें।

compile_to_path (फ़ाइलें, पथ, विकल्प \\ []) (1.6.0 के बाद से)

आवश्यकता (फ़ाइलें, विकल्प \\ []) (1.6.0 से)

दी गई फ़ाइलों को समानांतर में आवश्यकता है।

संकलन के विपरीत, निर्भरता को फ़ाइलों के बीच स्वचालित रूप से हल करने का प्रयास नहीं किया जाता है।

यह {:ok, modules, warnings} या {:error, errors, warnings}

दोनों त्रुटियाँ और चेतावनियाँ फ़ाइल, लाइन और स्वरूपित त्रुटि / चेतावनी वाले तीन तत्व tuples की एक सूची है।

विकल्प

  • :each_file प्रत्येक_फाइल - संकलित प्रत्येक फ़ाइल के लिए, फ़ाइल पास करने वाले कॉलबैक को आमंत्रित करता है

  • :each_module प्रत्येक_मॉड्यूल - संकलित प्रत्येक मॉड्यूल के लिए, फ़ाइल, मॉड्यूल और मॉड्यूल :each_module पास कॉलबैक को आमंत्रित करता है