fn bsearch_index(vm: &mut VM, self_val: Value, args: &Args2) -> VMResult {
    args.check_args_num(0)?;
    let ary = self_val.into_array();
    let block = to_enum_str!(vm, self_val, args, "bsearch_index");
    match binary_search(vm, ary, block)? {
        Some(i) => Ok(Value::integer(i as i64)),
        None => Ok(Value::nil()),
    }
}
## instance method Array#bsearch_index
- bsearch_index { |x| ... } -> Integer | nil
- bsearch_index -> Enumerator

https://docs.ruby-lang.org/ja/latest/method/Array/i/bsearch_index.html
ruruby/src/builtin/array.rs