class
   System::User
 
  
  Overview
Represents a user on the host system.
NOTE  To use User, you must explicitly import it with require "system/user"
Users can be retrieved by either username or their user ID:
require "system/user"
System::User.find_by name: "root"
System::User.find_by id: "0"Included Modules
- Crystal::System::User
Defined in:
system/user.crClass Method Summary
- 
        .find_by(*, name : String) : System::User
        
          Returns the user associated with the given username. 
- 
        .find_by(*, id : String) : System::User
        
          Returns the user associated with the given ID. 
- 
        .find_by?(*, name : String) : System::User | Nil
        
          Returns the user associated with the given username. 
- 
        .find_by?(*, id : String) : System::User | Nil
        
          Returns the user associated with the given ID. 
Instance Method Summary
- 
        #==(other : self)
        
          Returns trueif this reference is the same as other.
- 
        #group_id : String
        
          The user's primary group identifier. 
- #hash(hasher)
- 
        #home_directory : String
        
          The user's home directory. 
- 
        #id : String
        
          The user's identifier. 
- 
        #name : String
        
          The user's real or full name. 
- 
        #shell : String
        
          The user's login shell. 
- #to_s(io)
- 
        #username : String
        
          The user's username. 
Instance methods inherited from module Crystal::System::User
  
  
    
      system_group_id
    system_group_id, 
    
  
    
      system_home_directory
    system_home_directory, 
    
  
    
      system_id
    system_id, 
    
  
    
      system_name
    system_name, 
    
  
    
      system_shell
    system_shell, 
    
  
    
      system_username
    system_username
    
  
      
  Constructor methods inherited from module Crystal::System::User
  
  
    
      new(username : String, id : String, group_id : String, name : String, home_directory : String, shell : String)
    new
    
  
      
  Class methods inherited from module Crystal::System::User
  
  
    
      from_id?(id : String)
    from_id?, 
    
  
    
      from_username?(username : String)
    from_username?
    
  
      
    
      
  Instance methods inherited from class Reference
  
  
    
      ==(other : self)==(other : JSON::Any)
==(other : YAML::Any)
==(other) ==, dup dup, hash(hasher) hash, initialize initialize, inspect(io : IO) : Nil inspect, object_id : UInt64 object_id, pretty_print(pp) : Nil pretty_print, same?(other : Reference) : Bool
same?(other : Nil) same?, to_s(io : IO) : Nil to_s
Constructor methods inherited from class Reference
  
  
    
      new
    new, 
    
  
    
      unsafe_construct(address : Pointer, *args, **opts) : self
    unsafe_construct
    
  
      
  Class methods inherited from class Reference
  
  
    
      pre_initialize(address : Pointer)
    pre_initialize
    
  
      
    
      
  Instance methods inherited from class Object
  
  
    
      ! : Bool
    !, 
    
  
    
      !=(other)
    !=, 
    
  
    
      !~(other)
    !~, 
    
  
    
      ==(other)
    ==, 
    
  
    
      ===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, as(type : Class) as, as?(type : Class) as?, class class, dup dup, hash(hasher)
hash hash, in?(collection : Object) : Bool
in?(*values : Object) : Bool in?, inspect(io : IO) : Nil
inspect : String inspect, is_a?(type : Class) : Bool is_a?, itself itself, nil? : Bool nil?, not_nil!(message)
not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, responds_to?(name : Symbol) : Bool responds_to?, tap(&) tap, to_json(io : IO) : Nil
to_json : String to_json, to_pretty_json(indent : String = " ") : String
to_pretty_json(io : IO, indent : String = " ") : Nil to_pretty_json, to_s(io : IO) : Nil
to_s : String to_s, to_yaml(io : IO) : Nil
to_yaml : String to_yaml, try(&) try, unsafe_as(type : T.class) forall T unsafe_as
Class methods inherited from class Object
  
  
    
      from_json(string_or_io, root : String)from_json(string_or_io) from_json, from_yaml(string_or_io : String | IO) from_yaml
Macros inherited from class Object
  
  
    
      class_getter(*names, &block)
    class_getter, 
    
  
    
      class_getter!(*names)
    class_getter!, 
    
  
    
      class_getter?(*names, &block)
    class_getter?, 
    
  
    
      class_property(*names, &block)
    class_property, 
    
  
    
      class_property!(*names)
    class_property!, 
    
  
    
      class_property?(*names, &block)
    class_property?, 
    
  
    
      class_setter(*names)
    class_setter, 
    
  
    
      def_clone
    def_clone, 
    
  
    
      def_equals(*fields)
    def_equals, 
    
  
    
      def_equals_and_hash(*fields)
    def_equals_and_hash, 
    
  
    
      def_hash(*fields)
    def_hash, 
    
  
    
      delegate(*methods, to object)
    delegate, 
    
  
    
      forward_missing_to(delegate)
    forward_missing_to, 
    
  
    
      getter(*names, &block)
    getter, 
    
  
    
      getter!(*names)
    getter!, 
    
  
    
      getter?(*names, &block)
    getter?, 
    
  
    
      property(*names, &block)
    property, 
    
  
    
      property!(*names)
    property!, 
    
  
    
      property?(*names, &block)
    property?, 
    
  
    
      setter(*names)
    setter
    
  
    
  Class Method Detail
Returns the user associated with the given username.
Returns nil if no such user exists.
Returns the user associated with the given ID.
Returns nil if no such user exists.
Instance Method Detail
Returns true if this reference is the same as other. Invokes same?.
The user's real or full name.
May not be present on all platforms. Returns the same value as #username
if neither a real nor full name is available.