Class CSLexer
Performs lexical analysis on source supplied in C# syntax. This class supports lazy analysis that happens gradually as result tokens are consumed through IEnumerable interface.
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Namespace: Azos.CodeAnalysis.CSharp
Assembly: Azos.dll
Syntax
public sealed class CSLexer : Lexer<CSToken>, IConfigurable, ILexer, ICodeProcessor, IEnumerable<CSToken>, IEnumerable
Constructors
CSLexer(IAnalysisContext, SourceCodeRef, ISourceText, MessageList, Boolean)
Declaration
public CSLexer(IAnalysisContext context, SourceCodeRef srcRef, ISourceText source, MessageList messages = null, bool throwErrors = false)
Parameters
Type | Name | Description |
---|---|---|
IAnalysisContext | context | |
SourceCodeRef | srcRef | |
ISourceText | source | |
MessageList | messages | |
System.Boolean | throwErrors |
CSLexer(ISourceText, MessageList, Boolean)
Declaration
public CSLexer(ISourceText source, MessageList messages = null, bool throwErrors = false)
Parameters
Type | Name | Description |
---|---|---|
ISourceText | source | |
MessageList | messages | |
System.Boolean | throwErrors |
Properties
Language
Declaration
public override Language Language { get; }
Property Value
Type | Description |
---|---|
Language |
Overrides
Methods
DoLexingChunk()
Declaration
protected override bool DoLexingChunk()
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
Azos.CodeAnalysis.Lexer<Azos.CodeAnalysis.CSharp.CSToken>.DoLexingChunk()
MessageCodeToString(Int32)
Declaration
public override string MessageCodeToString(int code)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | code |
Returns
Type | Description |
---|---|
System.String |
Overrides
Implements
System.Collections.Generic.IEnumerable<T>
System.Collections.IEnumerable