promiseEffectOnlyPermutesAndPhases() {
        this.gate._hasNoEffect = false;
        this.gate._effectPermutesStates = true;
        this.gate._effectCreatesSuperpositions = false;
        this.gate._isDefinitelyUnitary = true;
        return this;
    }
Sets meta-properties to indicate the gate is safe for classical use and quantum use, but not safe for mixed used.
@returns {!GateBuilder}