想實現這樣的事情:是否有可能在數學中像終點符號一樣在ruby中覆蓋括號運算符?
arr = (1..10)
arr[2,5] = [2,3,4,5]
arr(2,5] = [3,4,5]
arr[2,5) = [2,3,4]
arr(2,5) = [3,4]
好了,我們需要覆蓋4個支架opreators:[],[)(],()
任何想法
這就是所謂的「包括或排除」在數學。https://en.wikipedia.org/wiki/Interval_(mathematics)#Including_or_excluding_endpoints
儘管鏈接很有用,但您應該花時間將這些信息包含在您的問題中 - 這並不難解釋。還要覆蓋它首先必須存在的方法。只有數組[[]存在,另外三個'(]','[''''和'()'必須被創建。更不用說執行語法糖。 –
不,您提出的語法並不能讓Ruby解析器理解。 –