Mac-Carbon
view release on metacpan or search on metacpan
Files/Files.xs view on Meta::CPAN
=cut
Handle
NewAliasMinimalFromFullPath(name, zone=NO_INIT, server=NO_INIT)
char * name
Str255 zone
Str255 server
CODE:
if (items < 3)
server[0] = 0;
if (items < 2)
zone[0] = 0;
gMacPerl_OSErr =
NewAliasMinimalFromFullPath(strlen(name), name, zone, server, (AliasHandle *)&RETVAL);
OUTPUT:
RETVAL
=item UpdateAlias TARGET, ALIAS
Updates an alias to point to the target file. Returns whether the alias was changed..
=cut
Boolean
UpdateAlias(target, alias)
FSSpec target
Handle alias
CODE:
if (gMacPerl_OSErr = UpdateAlias(nil, &target, (AliasHandle) alias, &RETVAL)) {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
=item UpdateAliasRelative FROM, TARGET, ALIAS
Updates an alias to point to the target file relative to FROM. Returns whether
the alias was changed..
=cut
Boolean
UpdateAliasRelative(from, target, alias)
FSSpec &from
FSSpec &target
Handle alias
CODE:
if (gMacPerl_OSErr = UpdateAlias(&from, &target, (AliasHandle) alias, &RETVAL)) {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
=item ResolveAlias ALIAS
Resolves an alias. In scalar context, returns the path to the resolved file.
In list context, also returns whether the alias was changed when resolving.
=cut
void
ResolveAlias(alias)
Handle alias
PPCODE:
{
FSSpec target;
Boolean changed;
gMacPerl_OSErr = ResolveAlias(nil, (AliasHandle) alias, &target, &changed);
if (gMacPerl_OSErr) {
XSRETURN_EMPTY;
}
XS_XPUSH(FSSpec, target);
if (GIMME == G_ARRAY) {
XS_XPUSH(Boolean, changed);
}
}
=item ResolveAliasRelative FROM, ALIAS
Resolves an alias relative to a file. In scalar context, returns the path to the
resolved file. In list context, also returns whether the alias was changed when
resolving.
=cut
void
ResolveAliasRelative(from, alias)
FSSpec &from
Handle alias
PPCODE:
{
FSSpec target;
Boolean changed;
gMacPerl_OSErr = ResolveAlias(&from, (AliasHandle) alias, &target, &changed);
if (gMacPerl_OSErr) {
XSRETURN_EMPTY;
}
XS_XPUSH(FSSpec, target);
if (GIMME == G_ARRAY) {
XS_XPUSH(Boolean, changed);
}
}
=item GetAliasInfo ALIAS, INDEX
Return a component of the alias information.
=cut
Str255
GetAliasInfo(alias, index)
Handle alias
short index
CODE:
if (gMacPerl_OSErr = GetAliasInfo((AliasHandle) alias, index, RETVAL)) {
XSRETURN_UNDEF;
}
OUTPUT:
RETVAL
=item UnmountVol (VOLUMENAME | VOLUMENR)
Unmounts a volume.
=cut
MacOSRet
_UnmountVol(volName, vRefNum)
Str255 volName
short vRefNum
CODE:
RETVAL = UnmountVol(volName, vRefNum);
OUTPUT:
RETVAL
=item Eject (VOLUMENAME | VOLUMENR)
B<Mac OS only.>
Ejects a volume, placing it offline.
=cut
MacOSRet
_Eject(volName, vRefNum)
Str255 volName
short vRefNum
CODE:
#ifndef MACOS_TRADITIONAL
croak("Usage: Mac::Files::Eject unsupported in Carbon");
#else
( run in 0.817 second using v1.01-cache-2.11-cpan-5511b514fd6 )