Show / Hide Table of Contents

Class JSONLexer

Performs lexical analysis on source supplied in JSON syntax. This class supports lazy analysis that happens gradually as result tokens are consumed through IEnumerable interface. NOTE: Although called JSON, this is really a JSON superset implementation that includes extra features: comments, directives, verbatim strings(start with $), ' or " string escapes, unquoted object key names

Inheritance
System.Object
CommonCodeProcessor
SourceRefCommonCodeProcessor
Lexer<JSONToken>
JSONLexer
Implements
ILexer
ICodeProcessor
System.Collections.Generic.IEnumerable<JSONToken>
System.Collections.IEnumerable
Inherited Members
Lexer<JSONToken>.Source
Lexer<JSONToken>.m_Tokens
Lexer<JSONToken>.AllAnalyzed
Lexer<JSONToken>.Tokens
Lexer<JSONToken>.TokenStream
Lexer<JSONToken>.GetEnumerator()
Lexer<JSONToken>.IEnumerable.GetEnumerator()
Lexer<JSONToken>.AnalyzeAll()
Lexer<JSONToken>.ToString()
Lexer<JSONToken>.m_AllAnalyzed
SourceRefCommonCodeProcessor.SourceCodeReference
SourceRefCommonCodeProcessor.EmitMessage(MessageType, Int32, SourcePosition, Token, String, Exception)
CommonCodeProcessor.Context
CommonCodeProcessor.Messages
CommonCodeProcessor.ThrowErrors
CommonCodeProcessor.EmitMessage(MessageType, Int32, SourceCodeRef, Nullable<SourcePosition>, Token, String, Exception)
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: NFX.CodeAnalysis.JSON
Assembly: NFX.dll
Syntax
public sealed class JSONLexer : Lexer<JSONToken>, ILexer, ICodeProcessor, IEnumerable<JSONToken>, IEnumerable

Constructors

JSONLexer(IAnalysisContext, SourceCodeRef, ISourceText, MessageList, Boolean)

Declaration
public JSONLexer(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

JSONLexer(ISourceText, MessageList, Boolean)

Declaration
public JSONLexer(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
CommonCodeProcessor.Language

Methods

DoLexingChunk()

Declaration
protected override bool DoLexingChunk()
Returns
Type Description
System.Boolean
Overrides
NFX.CodeAnalysis.Lexer<NFX.CodeAnalysis.JSON.JSONToken>.DoLexingChunk()

MessageCodeToString(Int32)

Declaration
public override string MessageCodeToString(int code)
Parameters
Type Name Description
System.Int32 code
Returns
Type Description
System.String
Overrides
CommonCodeProcessor.MessageCodeToString(Int32)

Implements

ILexer
ICodeProcessor
System.Collections.Generic.IEnumerable<T>
System.Collections.IEnumerable

Extension Methods

CollectionUtils.ForEach<T>(IEnumerable<T>, Action<T>)
CollectionUtils.ForEach<T>(IEnumerable<T>, Action<T, Int32>)
CollectionUtils.SkipLast<T>(IEnumerable<T>)
CollectionUtils.SkipLast<T>(IEnumerable<T>, Int32)
CollectionUtils.FirstMin<TResult, TComparand>(IEnumerable<TResult>, Func<TResult, TComparand>)
CollectionUtils.FirstMin<TResult, TComparand>(IEnumerable<TResult>, Func<TResult, TComparand>, out TComparand)
CollectionUtils.FirstMax<TResult, TComparand>(IEnumerable<TResult>, Func<TResult, TComparand>)
CollectionUtils.FirstMax<TResult, TComparand>(IEnumerable<TResult>, Func<TResult, TComparand>, out TComparand)
CollectionUtils.FirstOrAnyOrDefault<TResult>(IEnumerable<TResult>, Func<TResult, Boolean>)
CollectionUtils.Distinct<TResult, TKey>(IEnumerable<TResult>, Func<TResult, TKey>)
MiscUtils.NonNull<T>(T, Func<Exception>, String)
ObjectValueConversion.AsString(Object, String, ConvertErrorHandling)
ObjectValueConversion.AsNonNullOrEmptyString(Object)
ObjectValueConversion.AsLaconicConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsJSONConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsXMLConfig(Object, ConfigSectionNode, ConvertErrorHandling)
ObjectValueConversion.AsChar(Object, Char, ConvertErrorHandling)
ObjectValueConversion.AsNullableChar(Object, Nullable<Char>, ConvertErrorHandling)
ObjectValueConversion.AsByte(Object, Byte, ConvertErrorHandling)
ObjectValueConversion.AsNullableByte(Object, Nullable<Byte>, ConvertErrorHandling)
ObjectValueConversion.AsSByte(Object, SByte, ConvertErrorHandling)
ObjectValueConversion.AsNullableSByte(Object, Nullable<SByte>, ConvertErrorHandling)
ObjectValueConversion.AsShort(Object, Int16, ConvertErrorHandling)
ObjectValueConversion.AsNullableShort(Object, Nullable<Int16>, ConvertErrorHandling)
ObjectValueConversion.AsUShort(Object, UInt16, ConvertErrorHandling)
ObjectValueConversion.AsNullableUShort(Object, Nullable<UInt16>, ConvertErrorHandling)
ObjectValueConversion.AsInt(Object, Int32, ConvertErrorHandling)
ObjectValueConversion.AsNullableInt(Object, Nullable<Int32>, ConvertErrorHandling)
ObjectValueConversion.AsUInt(Object, UInt32, ConvertErrorHandling)
ObjectValueConversion.AsNullableUInt(Object, Nullable<UInt32>, ConvertErrorHandling)
ObjectValueConversion.AsLong(Object, Int64, ConvertErrorHandling)
ObjectValueConversion.AsNullableLong(Object, Nullable<Int64>, ConvertErrorHandling)
ObjectValueConversion.AsULong(Object, UInt64, ConvertErrorHandling)
ObjectValueConversion.AsNullableULong(Object, Nullable<UInt64>, ConvertErrorHandling)
ObjectValueConversion.AsDouble(Object, Double, ConvertErrorHandling)
ObjectValueConversion.AsNullableDouble(Object, Nullable<Double>, ConvertErrorHandling)
ObjectValueConversion.AsFloat(Object, Single, ConvertErrorHandling)
ObjectValueConversion.AsNullableFloat(Object, Nullable<Single>, ConvertErrorHandling)
ObjectValueConversion.AsDecimal(Object, Decimal, ConvertErrorHandling)
ObjectValueConversion.AsNullableDecimal(Object, Nullable<Decimal>, ConvertErrorHandling)
ObjectValueConversion.AsBool(Object, Boolean, ConvertErrorHandling)
ObjectValueConversion.AsNullableBool(Object, Nullable<Boolean>, ConvertErrorHandling)
ObjectValueConversion.AsGUID(Object, Guid, ConvertErrorHandling)
ObjectValueConversion.AsNullableGUID(Object, Nullable<Guid>, ConvertErrorHandling)
ObjectValueConversion.AsDateTime(Object)
ObjectValueConversion.AsDateTime(Object, DateTime, ConvertErrorHandling)
ObjectValueConversion.AsNullableDateTime(Object, Nullable<DateTime>, ConvertErrorHandling)
ObjectValueConversion.AsGDID(Object)
ObjectValueConversion.AsGDID(Object, GDID, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDID(Object, Nullable<GDID>, ConvertErrorHandling)
ObjectValueConversion.AsGDIDSymbol(Object)
ObjectValueConversion.AsGDIDSymbol(Object, GDIDSymbol, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDIDSymbol(Object, Nullable<GDIDSymbol>, ConvertErrorHandling)
ObjectValueConversion.AsTimeSpan(Object)
ObjectValueConversion.AsTimeSpan(Object, TimeSpan, ConvertErrorHandling)
ObjectValueConversion.AsNullableTimeSpan(Object, Nullable<TimeSpan>, ConvertErrorHandling)
ObjectValueConversion.AsEnum<TEnum>(Object, TEnum, ConvertErrorHandling)
ObjectValueConversion.AsNullableEnum<TEnum>(Object, Nullable<TEnum>, ConvertErrorHandling)
ObjectValueConversion.AsUri(Object, Uri, ConvertErrorHandling)
PatternSearch.LazyFSM<TToken>(IEnumerable<TToken>, LazyFSMPredicate<TToken>[])
PatternSearch.LazyFSM<TToken>(IEnumerable<TToken>, Boolean, LazyFSMPredicate<TToken>[])
PatternSearch.LazyFSM<TToken>(IEnumerable<TToken>, Boolean, ref LazyFSMState<TToken>, LazyFSMPredicate<TToken>[])
LookAheadExtensions.AsLookAheadEnumerable<T>(IEnumerable<T>)
JSONExtensions.ToJSON(Object, JSONWritingOptions)
JSONExtensions.ToJSON(Object, TextWriter, JSONWritingOptions)
JSONExtensions.ToJSON(Object, Stream, JSONWritingOptions, Encoding)
ErlObject.ToErlObject(Object)
ErlObject.ToErlObject(Object, ErlTypeOrder, Boolean)
Back to top Copyright © 2006-2018 Agnicore Inc
Generated by DocFX