92 lines
2.2 KiB
C#
92 lines
2.2 KiB
C#
|
//------------------------------------------------------------
|
||
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
//------------------------------------------------------------
|
||
|
|
||
|
namespace Microsoft.Build.Tasks.Xaml
|
||
|
{
|
||
|
using System;
|
||
|
using System.Collections.Generic;
|
||
|
using System.Linq;
|
||
|
using System.Text;
|
||
|
using System.Xaml;
|
||
|
using XamlBuildTask;
|
||
|
|
||
|
internal class XamlWrappingReader : XamlReader, IXamlLineInfo
|
||
|
{
|
||
|
XamlReader _underlyingReader;
|
||
|
|
||
|
internal XamlWrappingReader(XamlReader underlyingReader)
|
||
|
{
|
||
|
if (underlyingReader == null)
|
||
|
{
|
||
|
throw FxTrace.Exception.AsError(new ArgumentNullException("underlyingReader"));
|
||
|
}
|
||
|
_underlyingReader = underlyingReader;
|
||
|
}
|
||
|
|
||
|
public override bool IsEof
|
||
|
{
|
||
|
get { return _underlyingReader.IsEof; }
|
||
|
}
|
||
|
|
||
|
public override XamlMember Member
|
||
|
{
|
||
|
get { return _underlyingReader.Member; }
|
||
|
}
|
||
|
|
||
|
public override NamespaceDeclaration Namespace
|
||
|
{
|
||
|
get { return _underlyingReader.Namespace; }
|
||
|
}
|
||
|
|
||
|
public override XamlNodeType NodeType
|
||
|
{
|
||
|
get { return _underlyingReader.NodeType; }
|
||
|
}
|
||
|
|
||
|
public override bool Read()
|
||
|
{
|
||
|
return _underlyingReader.Read();
|
||
|
}
|
||
|
|
||
|
public override XamlSchemaContext SchemaContext
|
||
|
{
|
||
|
get { return _underlyingReader.SchemaContext; }
|
||
|
}
|
||
|
|
||
|
public override XamlType Type
|
||
|
{
|
||
|
get { return _underlyingReader.Type; }
|
||
|
}
|
||
|
|
||
|
public override object Value
|
||
|
{
|
||
|
get { return _underlyingReader.Value; }
|
||
|
}
|
||
|
|
||
|
private IXamlLineInfo LineInfo
|
||
|
{
|
||
|
get { return _underlyingReader as IXamlLineInfo; }
|
||
|
}
|
||
|
|
||
|
#region IXamlLineInfo Members
|
||
|
|
||
|
public bool HasLineInfo
|
||
|
{
|
||
|
get { return LineInfo != null && LineInfo.HasLineInfo; }
|
||
|
}
|
||
|
|
||
|
public int LineNumber
|
||
|
{
|
||
|
get { return LineInfo == null ? 0 : LineInfo.LineNumber; }
|
||
|
}
|
||
|
|
||
|
public int LinePosition
|
||
|
{
|
||
|
get { return LineInfo == null ? 0 : LineInfo.LinePosition; }
|
||
|
}
|
||
|
|
||
|
#endregion
|
||
|
}
|
||
|
}
|