Appearance
Built-in Methods and Variables
contract ContractImp implements Contract {
transient bool m_lock;
constructor() {}
public native bool trusts(address a, address b) {
return a == b || b == address(this);
}
private native bool bypassLocks(address from) {
if (m_lock) {
return trusts(address(this), from);
} else {
return true;
}
}
private native bool acquireLock(address l) {
if (l == address(this)) {
m_lock = true;
return true;
} else {
return false;
}
}
private native bool releaseLock(address l) {
if (l == address(this)) {
m_lock = false;
return true;
} else {
return false;
}
}
}
interface ExternallyManagedContract extends ManagedContract {
public bool directlyTrusts(address trustee);
public address[] directTrustees();
public TrustManager trustManager();
public LockManager lockManager();
}
interface ManagedContract extends Contract {
public bool addTrust{this}(address trustee);
public bool revokeTrust{this}(address trustee);
}