// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.server.npc.asset.builder.expression;

import com.hypixel.hytale.server.npc.util.expression.StdScope;
import javax.annotation.Nonnull;
import com.hypixel.hytale.server.npc.util.expression.ValueType;
import com.hypixel.hytale.server.npc.util.expression.ExecutionContext;

public class BuilderExpressionDynamicBoolean extends BuilderExpressionDynamic
{
    public BuilderExpressionDynamicBoolean(final String expression, final ExecutionContext.Instruction[] instructionSequence) {
        super(expression, instructionSequence);
    }
    
    @Nonnull
    @Override
    public ValueType getType() {
        return ValueType.BOOLEAN;
    }
    
    @Override
    public boolean getBoolean(@Nonnull final ExecutionContext executionContext) {
        this.execute(executionContext);
        return executionContext.popBoolean();
    }
    
    @Override
    public void updateScope(@Nonnull final StdScope scope, final String name, @Nonnull final ExecutionContext executionContext) {
        scope.changeValue(name, this.getBoolean(executionContext));
    }
}
