내 프로그램에서 특정 Ruby 문자열을 변경할 수 없도록해야합니다. 가장 좋은 솔루션은 무엇입니까? String
클래스 이상의 래퍼를 작성하고 있습니까?Ruby 문자열을 변경 불가능하게 만들기
freeze
방법은 저에게 적합하지 않습니다. freeze
에서 개체 고정을 해제 할 수 없습니다.
내 상황은 다음과 같습니다. 콜백에 문자열을 전달하는 클래스가 있습니다. 이 문자열은 클래스의 인스턴스 변수이므로 잠재적으로 커질 수 있습니다. 나는 콜백이 그것을 수정하기를 원하지 않지만, 클래스가 그것을 자유롭게 수정할 수 있도록 허용한다.
String을 불변으로 만들고 싶지는 않지만 변이시킬 수있는 능력을 제한하는 것처럼 들린다. – zetetic
@ zetetic : 동의 함. 그게 내가 원하는거야. – Kowshik