/* * call-seq: * file.set_attr(attribute, attribute_value) -> attribute_value * * Sets the attribute <i>attribute</i> for the file. * * File.new("test.rb").set_attr("description", "test script") # => "test script" * */ VALUE rb_file_set_attrf(fobj, aname, aval) VALUE fobj, aname, aval; { int ret; OpenFile *fptr; FILE *f; GetOpenFile(fobj, fptr); f = GetReadFile(fptr); Check_Type(fobj, T_FILE); Check_Type(aname, T_STRING); Check_Type(aval, T_STRING); ret = attr_setf(fileno(f), StringValueCStr(aname), StringValueCStr(aval), RSTRING(aval)->len, 1); if(ret == 0) { return aval; } else { rb_sys_fail(""); } }