public IndexAssign(Expression target, IndexSpec indexSpec, Operator op, Expression expression, Position start = new Position(), Position end = new Position()) : base(start, end) { this.target = target; this.indexSpec = indexSpec; this.op = op; this.expression = expression; }
public override IIndexAccessEmitter AllowedIndexAccess(ModuleContext context, IndexSpec indexSpec) => null;
public override IIndexAccessEmitter AllowedIndexAccess(ModuleContext context, IndexSpec indexSpec) => null; // TODO: Actually this should be allowed
public override IIndexAccessEmitter AllowedIndexAccess(ModuleContext context, IndexSpec indexSpec) => ReferencedType(context).AllowedIndexAccess(context, indexSpec);
public override IIndexAccessEmitter AllowedIndexAccess(ModuleContext context, IndexSpec indexSpec) => aliasedType.AllowedIndexAccess(declaredModule, indexSpec);
/// <summary> /// Check if index access is allowed for this type. /// </summary> public virtual IIndexAccessEmitter AllowedIndexAccess(ModuleContext context, IndexSpec indexSpec) => null;
public IndexGet(Expression target, IndexSpec indexSpec, Position start = new Position(), Position end = new Position()) : base(start, end) { this.target = target; this.indexSpec = indexSpec; }