original_string: public function roles($driver = null)
  	{
  		$result = array();
  
  		if ($driver === null)
  		{
  			foreach (\Auth::acl(true) as $acl)
  			{
  				method_exists($acl, 'roles') and $result = \Arr::merge($result, $acl->roles());
  			}
  		}
  		else
  		{
  			$result = \Auth::acl($driver)->roles();
  		}
  
  		return $result;
  	}
code: public function roles($driver = null)
  	{
  		$result = array();
  
  		if ($driver === null)
  		{
  			foreach (\Auth::acl(true) as $acl)
  			{
  				method_exists($acl, 'roles') and $result = \Arr::merge($result, $acl->roles());
  			}
  		}
  		else
  		{
  			$result = \Auth::acl($driver)->roles();
  		}
  
  		return $result;
  	}
code_tokens: public function roles ( $ driver = null ) { $ result = array ( ) ; if ( $ driver === null ) { foreach ( \ Auth :: acl ( true ) as $ acl ) { method_exists ( $ acl , 'roles' ) and $ result = \ Arr :: merge ( $ result , $ acl -> roles ( ) ) ; } } else { $ result = \ Auth :: acl ( $ driver ) -> roles ( ) ; } return $ result ; }
docstring: Returns the list of defined roles
  
  @return  array
docstring_tokens: Returns the list of defined roles