Property definitions

posix $ Group :: defaultinit
# Information on a user group
extern class Group `{struct group*`}
	# Get a group from its id
	new from_gid(gid: Int) `{ return getgrgid(gid); `}

	# Get a group from its name
	new from_name(name: String) import String.to_cstring `{ return getgrnam( String_to_cstring(name) ); `}

	# Name of this ground
	fun name: String import CString.to_s `{ return CString_to_s(self->gr_name); `}

	# Encrypted password of this group
	fun passwd: String import CString.to_s `{ return CString_to_s(self->gr_passwd); `}

	# Id of this group
	fun gid: Int `{ return self->gr_gid; `}

	# List of the members of the group
	fun mem: Array[String] import Array[String], Array[String].add, CString.to_s `{
		char **mem;
		int m;
		Array_of_String ret;

		mem = self->gr_mem;
		ret = new_Array_of_String();

		for (m = 0; mem[m] != NULL; m++)
			Array_of_String_add(ret, CString_to_s(mem[m]));

		return ret;
	`}
end
lib/posix/posix.nit:78,1--109,3