2016-07-07 7 views
6

मैं एक कोडन मानक है कि पता चलता है कि एक त्रिगुट के लिए प्रारंभिक तर्क हमेशा कोष्ठक के अंदर होना चाहिए, अभिव्यक्ति की परवाह किए बिना किया है।मैं RuboCop साथ त्रिगुट कोष्ठकों कैसे लागू कर सकते हैं?

उदा। foo = (thing.baz?) ? [] : thing.bar

निम्नलिखित एक अतिक्रमण विचार किया जाना चाहिए:

जैसे foo = thing.baz? ? [] : thing.bar

यह संभव Rubocop के अंतर्निहित पुलिस के साथ इस लक्ष्य को हासिल करने के लिए है, या यह एक कस्टम कॉप की आवश्यकता है। यदि हां, तो मैं इसे कैसे कार्यान्वित करूं?

+0

AFIAK, वहाँ बॉक्स से बाहर नहीं इस तरह के एक सिपाही है। [Rubocop परीक्षण] में (https://github.com/nevir/rubocop-rspec/tree/master/lib/rubocop/cop/rspec) वहाँ उदाहरण और कस्टम पुलिस बनाने के लिए पर संक्षिप्त डॉक्स कर रहे हैं। – mudasobwa

उत्तर

12

मैं अपने प्रश्न को देखा, तो मैं आगे चला गया और आप के लिए पुलिस को लागू किया। नाम Style/TernaryParentheses है, और EnforcedStyle इच्छित विकल्प require_parentheses है

# .rubocop.yml 
Style/TernaryParentheses: 
    Enabled: true 
    EnforcedStyle: require_parentheses 

आप इसे का उपयोग शुरू कर सकते हैं अभी, अपने Gemfile में इस डालकर (डिफ़ॉल्ट।):

gem 'rubocop', git: 'git://github.com/bbatsov/rubocop.git' 

या आप 0.42.0 रिलीज के लिए प्रतीक्षा कर सकते हैं।

+0

यह कमाल है। आपका बहुत धन्यवाद! – qnm

+0

कोई चिंता नहीं। गिटहब रेपो में बग रिपोर्ट या फीचर अनुरोधों को दर्ज करने में संकोच न करें। यह सब बहुत उपयोगी है। :-) – Drenmi

संबंधित मुद्दे