protected RubyString escape(VirtualFrame frame, RubyString string) { if (escapeNode == null) { CompilerDirectives.transferToInterpreterAndInvalidate(); escapeNode = insert( RegexpNodesFactory.EscapeNodeFactory.create( getContext(), getSourceSection(), new RubyNode[] {null})); } return escapeNode.executeEscape(frame, string); }