Tha thứ cho sự thiếu hiểu biết của tôi, nhưng tôi phải bỏ lỡ điều gì đó ở đây. Tôi có thể tìm thấy tài liệu cho instance_eval cho ruby 1.8.7 trong lớp Object
, nhưng tôi không thể tìm thấy tài liệu ở bất kỳ đâu cho 1.9.2. Tôi biết chức năng vẫn được hỗ trợ kể từ khi tôi sử dụng nó. Có một số lớp cha mẹ bí mật mà nó đã được chuyển đến?Trường hợp instance_eval được định nghĩa trong Ruby 1.9.2?
5
A
Trả lời
5
Nếu bạn làm Object.superclass
, bạn sẽ thấy rằng đó là BasicObject
chính nó không có siêu lớp. Sử dụng BasicObject.public_methods
cho biết rằng instance_eval
được xác định tại đó.
Có does not seem to be any documentation cho các phương pháp trên BasicObject
.
Các vấn đề liên quan
- 1. Trường hợp Ruby && = edge
- 2. Chạy ruby 1.9.2 trên Heroku
- 3. vang nếu biến được định nghĩa trong ruby / ERB
- 4. Từ khóa được định nghĩa trong Ruby ở đâu?
- 5. Cách biên dịch vim bằng ruby 1.9.2
- 6. Sự khác biệt của Ruby giữa gửi và instance_eval?
- 7. RVM, Ruby 1.9.2, Rails 2.3.8, Hành khách và "chuỗi byte không hợp lệ trong US-ASCII"
- 8. SystemStackError ở cấp độ rack trong Ruby 1.9.2, không 1.8.7
- 9. AUTH không có sẵn (Net :: SMTPAuthenticationError) trong Ruby 1.9.2
- 10. Lỗi trong việc đẩy mạnh Heroku, json và ruby 1.9.2
- 11. Sự khác nhau giữa Process.fork và Process.spawn trong Ruby 1.9.2
- 12. trường hợp trong một trường hợp được chọn trong mysql
- 13. Trạng thái thoát Ruby/Thor trong trường hợp lỗi
- 14. Ruby 1.9.2 xuất chuỗi CSV mà không cần tạo tệp
- 15. Rails 3 khởi chạy cực kỳ chậm trên Ruby 1.9.2
- 16. Cài đặt Ruby 1.9.2 trên Ubuntu bằng Chef và Vagrant
- 17. Các trường của GC.stat của Ruby có nghĩa là gì?
- 18. Tôi có thể lấy định nghĩa lớp trường hợp Scala từ định nghĩa lược đồ Avro không?
- 19. Tại sao các biến được xác định trong một khối trường hợp có sẵn trong các khối trường hợp khác?
- 20. Trong Ruby có cách nào để biết được phương thức được định nghĩa ở đâu?
- 21. Tuyên bố trường hợp Ruby trên băm?
- 22. Có phải 'năng suất tự' giống như instance_eval không?
- 23. của Ruby Định nghĩa của tự
- 24. LoadError chạy Mongrel với Rails3 và Ruby 1.9.2
- 25. Định nghĩa "toArray" của một tập hợp?
- 26. Định nghĩa lại lệnh trong một môi trường mới
- 27. Trường hợp biểu hiện khác nhau trong Ruby 1.9?
- 28. lệnh ar_sendmail không hoạt động với ruby 1.9.2
- 29. "&" có nghĩa là gì trong trường hợp này?
- 30. Làm thế nào để nâng cấp lên 1.9.2 ruby
Ahh tôi hiểu rồi. Có lý do cụ thể nào khiến tài liệu không tồn tại? Họ đang cố gắng ngăn cản việc sử dụng 'instance_eval'? Tôi cũng nhận thấy rằng 'method_missing' không được ghi lại ở bất cứ đâu? Ngoài ra, tài liệu thực tế cho BasicObject là ở đây: http://ruby-doc.org/core-1.9/classes/BasicObject.html. – elmt
Tôi phát hiện ra liên kết đó, nhưng các tài liệu dưới /core-1.9 là 1,9 trong khi các tài liệu dưới/lõi là mới nhất (hiện tại là 1.9.2). Có vẻ như định nghĩa của 'BasicObject' đã chuyển từ [object.c] (https://github.com/ruby/ruby/blob/v1_9_0_0/object.c) thành [class.c] (https: // github .com/ruby / ruby / blob/ruby_1_9_2/class.c) khi di chuyển từ 1.9 đến 1.9.2 để có thể tính toán số lượng tài liệu nhỏ bạn có thể thấy trong lõi-1.9. – mikej