diff --git a/plugins/commands/serve/mappers/internal/stack.rb b/plugins/commands/serve/mappers/internal/stack.rb new file mode 100644 index 000000000..fbf0bd8b4 --- /dev/null +++ b/plugins/commands/serve/mappers/internal/stack.rb @@ -0,0 +1,45 @@ +module VagrantPlugins + module CommandServe + class Mappers + module Internal + # Simple stack implementation + class Stack + def initialize + @data = [] + @m = Mutex.new + end + + def include?(v) + @m.synchronize do + @data.include?(v) + end + end + + def pop + @m.synchronize do + @data.pop + end + end + + def push(v) + @m.synchronize do + @data.push(v) + end + end + + def size + @m.synchronize do + @data.size + end + end + + def values + @m.synchronize do + @data.dup + end + end + end + end + end + end +end