/ contracts / account / UserAccountFactory.sol
UserAccountFactory.sol
 1  pragma solidity >=0.5.0 <0.7.0;
 2  
 3  import "./Creator.sol";
 4  import "./UserAccount.sol";
 5  import "../cryptography/ECDSA.sol";
 6  
 7  contract UserAccountFactory is Creator {
 8  
 9      constructor() public {
10  
11      }
12  
13      function create(uint256 _salt) external returns(address) {
14        //  return newUserAccount(_salt, msg.sender);
15      }
16  
17      function createSigned(uint256 _salt, bytes calldata _signature) external returns(address)  {
18         // return newUserAccount(_salt, ECDSA.recover(keccak256(abi.encodePacked(address(this), _salt, msg.sender)), _signature));
19      }
20  
21      function predictUserAddress(uint256 _salt, address _owner) external view returns(address) {
22         // return _computeContractAddress(abi.encodePacked(type(UserAccount).creationCode, _owner, address(0), address(0)), bytes32(keccak256(abi.encodePacked(_owner, _salt))));
23      }
24  
25      function newUserAccount(uint256 _salt, address _owner) internal returns(address) {
26          //return _create2(0, abi.encodePacked(type(UserAccount).creationCode, _owner, address(0), address(0)), bytes32(keccak256(abi.encodePacked(_owner, _salt))));
27      }
28  
29  }