public static CallSite string(Lookup lookup, String name, MethodType type, String value, int encoding) {
MethodHandle handle = Binder
.from(IRubyObject.class, ThreadContext.class)
.insert(0, new Class[]{String.class, int.class}, value, encoding)
.invokeStaticQuiet(MethodHandles.lookup(), Bootstrap.class, "string");
CallSite site = new ConstantCallSite(handle);
return site;
}