Пример #1
0
 public static TypeMention Create(Context cx, TypeSyntax syntax, IEntity parent, Type type, Microsoft.CodeAnalysis.Location loc = null)
 {
     var ret = new TypeMention(cx, syntax, parent, type, loc);
     cx.Try(syntax, null, () => ret.Populate());
     return ret;
 }
Пример #2
0
 private void Emit(TextWriter trapFile, Microsoft.CodeAnalysis.Location loc, IEntity parent, Type type)
 {
     trapFile.type_mention(this, type.TypeRef, parent);
     trapFile.type_mention_location(this, cx.CreateLocation(loc));
 }
Пример #3
0
 public AccessStepPack(string identifier, Microsoft.CodeAnalysis.Location location) =>
Пример #4
0
 void Emit(Microsoft.CodeAnalysis.Location loc, IEntity parent, Type type)
 {
     cx.Emit(Tuples.type_mention(this, type.TypeRef, parent));
     cx.Emit(Tuples.type_mention_location(this, cx.Create(loc)));
 }
Пример #5
0
 public AccessStepPack Add(string identifier, Microsoft.CodeAnalysis.Location location)
 {
     Prefix.Add(Last);
     Last = new AccessStep(identifier, location);
     return(this);
 }
Пример #6
0
 private record AccessStep(string Identifier, Microsoft.CodeAnalysis.Location Location);
Пример #7
0
 /// <summary>
 /// Creates a Location entity.
 /// </summary>
 /// <param name="cx">The extraction context.</param>
 /// <param name="location">The CodeAnalysis location.</param>
 /// <returns>The Location entity.</returns>
 public static Location Create(this Context cx, Microsoft.CodeAnalysis.Location location) =>
 Location.Create(cx, location);
Пример #8
0
 private TypeMention(Context cx, TypeSyntax syntax, IEntity parent, Type type, Microsoft.CodeAnalysis.Location loc = null)
     : base(cx)
 {
     this.syntax = syntax;
     this.parent = parent;
     this.type   = type;
     this.loc    = loc;
 }
Пример #9
0
 public static TypeMention Create(Context cx, TypeSyntax syntax, IEntity parent, AnnotatedType type, Microsoft.CodeAnalysis.Location loc = null) =>
 Create(cx, syntax, parent, type.Type, loc);