68 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Erlang
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Erlang
		
	
	
	
	
	
%%
 | 
						|
%% %CopyrightBegin%
 | 
						|
%%
 | 
						|
%% Copyright Ericsson AB 1997-2015. All Rights Reserved.
 | 
						|
%%
 | 
						|
%% Licensed under the Apache License, Version 2.0 (the "License");
 | 
						|
%% you may not use this file except in compliance with the License.
 | 
						|
%% You may obtain a copy of the License at
 | 
						|
%%
 | 
						|
%%     http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
%%
 | 
						|
%% Unless required by applicable law or agreed to in writing, software
 | 
						|
%% distributed under the License is distributed on an "AS IS" BASIS,
 | 
						|
%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
						|
%% See the License for the specific language governing permissions and
 | 
						|
%% limitations under the License.
 | 
						|
%%
 | 
						|
%% %CopyrightEnd%
 | 
						|
%%
 | 
						|
 | 
						|
-ifndef(FILE_HRL_).
 | 
						|
-define(FILE_HRL_, 1).
 | 
						|
%%--------------------------------------------------------------------------
 | 
						|
 | 
						|
-record(file_info,
 | 
						|
        {size   :: non_neg_integer() | 'undefined',  % Size of file in bytes.
 | 
						|
         type   :: 'device' | 'directory' | 'other' | 'regular' | 'symlink'
 | 
						|
                 | 'undefined',
 | 
						|
         access :: 'read' | 'write' | 'read_write' | 'none' | 'undefined',
 | 
						|
         atime  :: file:date_time() | non_neg_integer() | 'undefined',
 | 
						|
                                     % The local time the file was last read:
 | 
						|
                                     % {{Year, Mon, Day}, {Hour, Min, Sec}}.
 | 
						|
                                     % atime, ctime, mtime may also be unix epochs()
 | 
						|
         mtime  :: file:date_time() | non_neg_integer() | 'undefined',
 | 
						|
                                     % The local time the file was last written.
 | 
						|
         ctime  :: file:date_time() | non_neg_integer() | 'undefined',
 | 
						|
                                     % The interpretation of this time field
 | 
						|
                                     % is dependent on operating system.
 | 
						|
                                     % On Unix it is the last time the file
 | 
						|
                                     % or the inode was changed.  On Windows,
 | 
						|
                                     % it is the creation time.
 | 
						|
         mode   :: non_neg_integer() | 'undefined',
 | 
						|
                                     % File permissions.  On Windows,
 | 
						|
                                     % the owner permissions will be
 | 
						|
                                     % duplicated for group and user.
 | 
						|
         links  :: non_neg_integer() | 'undefined',
 | 
						|
                                     % Number of links to the file (1 if the
 | 
						|
                                     % filesystem doesn't support links).
 | 
						|
         major_device :: non_neg_integer() | 'undefined',
 | 
						|
                                     % Identifies the file system (Unix),
 | 
						|
                                     % or the drive number (A: = 0, B: = 1)
 | 
						|
                                     % (Windows).
 | 
						|
         %% The following are Unix specific.
 | 
						|
         %% They are set to zero on other operating systems.
 | 
						|
         minor_device :: non_neg_integer() | 'undefined',
 | 
						|
                                             % Only valid for devices.
 | 
						|
         inode   :: non_neg_integer() | 'undefined',  % Inode number for file.
 | 
						|
         uid     :: non_neg_integer() | 'undefined',   % User id for owner.
 | 
						|
         gid     :: non_neg_integer() | 'undefined'}). % Group id for owner.
 | 
						|
 | 
						|
 | 
						|
-record(file_descriptor,
 | 
						|
	{module :: module(),     % Module that handles this kind of file
 | 
						|
	 data   :: term()}).     % Module dependent data
 | 
						|
 | 
						|
%%--------------------------------------------------------------------------
 | 
						|
-endif.
 |