///
///  DirectWriterProxy.swift
///
///  Copyright 2018 Tony Stone
///
///  Licensed under the Apache License, Version 2.0 (the "License");
///  you may not use this file except in compliance with the License.
///  You may obtain a copy of the License at
///
///  http://www.apache.org/licenses/LICENSE-2.0
///
///  Unless required by applicable law or agreed to in writing, software
///  distributed under the License is distributed on an "AS IS" BASIS,
///  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
///  See the License for the specific language governing permissions and
///  limitations under the License.
///
///  Created by Tony Stone on 12/22/18.
///
import Swift
import Dispatch

/// Direct proxy for instances of Writer.
///
internal class DirectWriterProxy: WriterProxy {

    /// The writer this class proxies.
    ///
    private let writer: Writer

    internal init(writer: Writer) {
        self.writer = writer
    }

    @inline(__always)
    internal func write(_ entry: Writer.LogEntry) {
        _ = self.writer.write(entry)
    }
}
