1 #include <bindings.dsl.h>
2 #include <CoreServices/CoreServices.h>
4 module Bindings.CoreServices.CarbonCore.Aliases where
6 import Bindings.CoreServices.CarbonCore.Files
7 import Bindings.CoreServices.CarbonCore.MacTypes
8 import Bindings.CoreServices.CarbonCore.UTCUtils
10 #synonym_t FSAliasInfoBitmap, <UInt32>
12 #num kFSAliasInfoVolumeCreateDate
13 #num kFSAliasInfoTargetCreateDate
14 #num kFSAliasInfoFinderInfo
15 #num kFSAliasInfoIsDirectory
17 #num kFSAliasInfoFSInfo
18 #num kFSAliasInfoVolumeFlags
27 #num kARMSearchRelFirst
28 #num kARMTryFileIDFirst
36 #num kResolveAliasFileNoUI
37 #num kResolveAliasTryFileIDFirst
39 #if __AL_USE_OPAQUE_RECORD__
40 # starttype struct AliasRecord
41 # array_field hidden, <UInt8>
44 # starttype struct AliasRecord
45 # field userType , <OSType>
46 # field aliasSize, CUShort
49 #synonym_t AliasPtr , Ptr <AliasRecord>
50 #synonym_t AliasHandle, Ptr <AliasPtr>
52 #starttype struct FSAliasInfo
53 # field volumeCreateDate, <UTCDateTime>
54 # field targetCreateDate, <UTCDateTime>
55 # field fileType , <OSType>
56 # field fileCreator , <OSType>
57 # field parentDirID , <UInt32>
58 # field nodeID , <UInt32>
59 # field filesystemID , <UInt16>
60 # field signature , <UInt16>
61 # field volumeIsBootVolume , <Boolean>
62 # field volumeIsAutomounted, <Boolean>
63 # field volumeIsEjectable , <Boolean>
64 # field volumeHasPersistentFileIDs, <Boolean>
65 # field isDirectory , <Boolean>
67 #synonym_t FSAliasInfoPtr, Ptr <FSAliasInfo>
68 #integral_t AliasInfoType
71 # callback AlisFilterProcPtr, <CInfoPBPtr> -> Ptr <Boolean> -> <Ptr> -> IO <Boolean>
72 # synonym_t AlisFilterUPP , <AliasFilterProcPtr>
75 #callback FSAliasFilterProcPtr, Ptr <FSRef> -> Ptr <Boolean> -> <Ptr> -> IO <Boolean>
77 #ccall FSNewAlias , Ptr <FSRef> -> Ptr <FSRef> -> Ptr <AliasHandle> -> IO <OSErr>
78 #ccall FSNewAliasMinimal , Ptr <FSRef> -> Ptr <AliasHandle> -> IO <OSErr>
79 #ccall FSIsAliasFile , Ptr <FSRef> -> Ptr <Boolean> -> Ptr <Boolean> -> IO <OSErr>
80 #ccall FSResolveAliasWithMountFlags, Ptr <FSRef> -> <AliasHandle> -> Ptr <FSRef> -> Ptr <Boolean> -> CULong -> IO <OSErr>
81 #ccall FSResolveAlias , Ptr <FSRef> -> <AliasHandle> -> Ptr <FSRef> -> Ptr <Boolean> -> IO <OSErr>
82 #ccall FSResolveAliasFileWithMountFlags, Ptr <FSRef> -> <Boolean> -> Ptr <Boolean> -> Ptr <Boolean> -> CULong -> IO <OSErr>
83 #ccall FSResolveAliasFile , Ptr <FSRef> -> <Boolean> -> Ptr <Boolean> -> Ptr <Boolean> -> IO <OSErr>
84 #ccall FSFollowFinderAlias, Ptr <FSRef> -> <AliasHandle> -> <Boolean> -> Ptr <FSRef> -> Ptr <Boolean> -> IO <OSErr>
85 #ccall FSUpdateAlias , Ptr <FSRef> -> Ptr <FSRef> -> <AliasHandle> -> Ptr <Boolean> -> IO <OSErr>
86 #ccall FSNewAliasUnicode , Ptr <FSRef> -> Ptr <FSRef> -> <UniCharCount> -> Ptr <UniChar> -> Ptr <AliasHandle> -> Ptr <Boolean> -> IO <OSErr>
87 #ccall FSNewAliasMinimalUnicode, Ptr <FSRef> -> <UniCharCount> -> Ptr <UniChar> -> Ptr <AliasHandle> -> Ptr <Boolean> -> IO <OSErr>
88 #ccall FSNewAliasFromPath , Ptr CChar -> Ptr CChar -> <OptionBits> -> Ptr <AliasHandle> -> Ptr <Boolean> -> IO <OSStatus>
89 #ccall FSMatchAliasBulk , Ptr <FSRef> -> CULong -> <AliasHandle> -> Ptr CShort -> Ptr <FSRef> -> Ptr <Boolean> -> <FSAliasFilterProcPtr> -> Ptr () -> IO <OSStatus>
90 #ccall FSCopyAliasInfo , <AliasHandle> -> Ptr <HFSUniStr255> -> Ptr <HFSUniStr255> -> Ptr <CFStringRef> -> Ptr <FSAliasInfoBitmap> -> Ptr <FSAliasInfo> -> IO <OSStatus>
91 #ccall GetAliasSize , <AliasHandle> -> IO <Size>
92 #ccall GetAliasUserType , <AliasHandle> -> IO <OSType>
93 #ccall SetAliasUserType , <AliasHandle> -> <OSType> -> IO ()
94 #ccall GetAliasSizeFromPtr, Ptr <AliasRecord> -> IO <Size>
95 #ccall GetAliasUserTypeFromPtr, Ptr <AliasRecord> -> IO <OSType>
96 #ccall SetAliasUserTypeWithPtr, <AliasPtr> -> <OSType> -> IO ()
99 # ccall FSMatchAlias , Ptr <FSRef> -> CULong -> <AliasHandle> -> Ptr CShort -> Ptr <FSRef> -> Ptr <Boolean> -> <AliasFilterUPP> -> Ptr () -> IO <OSErr>
100 # ccall FSMatchAliasNoUI , Ptr <FSRef> -> CULong -> <AliasHandle> -> Ptr CShort -> Ptr <FSRef> -> Ptr <Boolean> -> <AliasFilterUPP> -> Ptr () -> IO <OSErr>
101 # ccall NewAlias , Ptr <FSSpec> -> Ptr <FSSpec> -> Ptr <AliasHandle> -> IO <OSErr>
102 # ccall NewAliasMinimal , Ptr <FSSpec> -> Ptr <AliasHandle> -> IO <OSErr>
103 # ccall NewAliasMinimalFromFullPath, CShort -> Ptr () -> <ConstStr32Param> -> <ConstStr31Param> -> Ptr <AliasHandle> -> IO <OSErr>
104 # ccall ResolveAlias , Ptr <FSSpec> -> <AliasHandle> -> Ptr <FSSpec> -> Ptr <Boolean> -> IO <OSErr>
105 # ccall GetAliasInfo , <AliasHandle> -> <AliasInfoType> -> <Str63> -> IO <OSErr>
106 # ccall IsAliasFile , Ptr <FSSpec> -> Ptr <Boolean> -> Ptr <Boolean> -> IO <OSErr>
107 # ccall ResolveAliasWithMountFlags, Ptr <FSSpec> -> <AliasHandle> -> Ptr <FSSpec> -> Ptr <Boolean> -> CULong -> IO <OSErr>
108 # ccall ResolveAliasFile , Ptr <FSSpec> -> <Boolean> -> Ptr <Boolean> -> Ptr <Boolean> -> IO <OSErr>
109 # ccall ResolveAliasFileWithMountFlags, Ptr <FSSpec> -> <Boolean> -> Ptr <Boolean> -> Ptr <Boolean> -> CULong -> IO <OSErr>
110 # ccall FollowFinderAlias, Ptr <FSSpec> -> <AliasHandle> -> <Boolean> -> Ptr <FSSpec> -> Ptr <Boolean> -> IO <OSErr>
111 # ccall UpdateAlias , Ptr <FSSpec> -> Ptr <FSSpec> -> <AliasHandle> -> Ptr <Boolean> -> IO <OSErr>
112 # ccall MatchAlias , Ptr <FSSpec> -> CULong -> <AliasHandle> -> Ptr CShort -> <FSSpecArrayPtr> -> Ptr <Boolean> -> <AliasFilterUPP> -> Ptr () -> IO <OSErr>
113 # ccall ResolveAliasFileWithMountFlagsNoUI, Ptr <FSSpec> -> <Boolean> -> Ptr <Boolean> -> Ptr <Boolean> -> CLong -> IO <OSErr>
114 # ccall MatchAliasNoUI , Ptr <FSSpec> -> CULong -> <AliasHandle> -> Ptr CShort -> <FSSpecArrayPtr> -> Ptr <Boolean> -> <AliasFilterUPP> -> Ptr () -> IO <OSErr>