IResMemberRef IResContainerBuilderRef.CreateMemberRef(SourceRange range, IResMemberDecl memberDecl) { return(memberDecl.MakeRef( range, new ResMemberBind( range, new ResVarRef(range, _container.ThisParameter, _container.ThisPipeline), new ResMemberSpec(range, _container.ThisPipeline, memberDecl)))); }
public ResGlobalMemberTerm( SourceRange range, ILazy<IResModuleDecl> module, IResMemberDecl decl) { _range = range; _module = module; _decl = decl; _subst = new Substitution(); }
private MidMemberDecl EmitMemberDecl( object parent, IResMemberDecl resMemberDecl, MidEmitEnv env) { return(EmitMemberDeclImpl( (dynamic)parent, (dynamic)resMemberDecl, env)); }
public ResGlobalMemberTerm( SourceRange range, ILazy <IResModuleDecl> module, IResMemberDecl decl) { _range = range; _module = module; _decl = decl; _subst = new Substitution(); }
private IMidMemberRef LookupMemberImpl( IMidMemberRef container, MidVal obj, IResMemberDecl resDecl, MidEmitEnv env) { var midDecl = container.LookupMemberDecl(resDecl); return(midDecl.CreateRef(new MidMemberBind(obj, midDecl))); }
public override MidMemberDecl LookupMemberDecl( IResMemberDecl resMemberDecl) { Force(); MidMemberDecl result; if (_members.TryGetValue(resMemberDecl, out result)) return result; return null; }
IResMemberRef IResContainerBuilderRef.CreateMemberRef(SourceRange range, IResMemberDecl memberDecl) { var resGesGenericDecl = _genericDeclBuilder.Value; var resGenericRef = (IResGenericRef)_outerContainerBuilder.CreateMemberRef(range, resGesGenericDecl); return(memberDecl.MakeRef( range, new ResMemberGenericApp( resGenericRef, (from p in resGenericRef.Parameters select p.MakeArg(range)).ToArray()))); }
public ResMemberSpec( SourceRange range, IResContainerRef container, IResMemberDecl decl) { if (decl == null) throw new ArgumentNullException("decl"); _range = range; _container = container; _decl = decl; }
IResMemberRef IResContainerBuilderRef.CreateMemberRef(SourceRange range, IResMemberDecl memberDecl) { throw new NotImplementedException(); /* * return memberDecl.MakeRef( * range, * new ResMemberBind( * range, * new ResVarRef(range, ThisParameter, this), * new ResMemberSpec(range, this, memberDecl))); */ }
public override MidMemberDecl LookupMemberDecl( IResMemberDecl resMemberDecl) { Force(); MidMemberDecl result; if (_members.TryGetValue(resMemberDecl, out result)) { return(result); } return(null); }
public ResMemberSpec( SourceRange range, IResContainerRef container, IResMemberDecl decl) { if (decl == null) { throw new ArgumentNullException("decl"); } _range = range; _container = container; _decl = decl; }
private IMidMemberRef LookupMemberImpl( MidConceptClassRef container, MidConceptVal obj, IResMemberDecl resMemberDecl, MidEmitEnv env) { var resMembersDecls = container.Decl.Members.ToArray(); var midMemberRefs = obj.MemberRefs.ToArray(); int memberDeclCount = resMembersDecls.Length; for (int ii = 0; ii < memberDeclCount; ++ii) { if (resMembersDecls[ii] == resMemberDecl) { return(midMemberRefs[ii]); } } throw new NotImplementedException(); }
public MidMemberDecl LookupMemberDecl(IResMemberDecl resMemberDecl) { return _decl.LookupMemberDecl(resMemberDecl); }
public virtual void InsertMemberDecl( IResMemberDecl resMemberDecl, MidMemberDecl midMemberDecl) { _members[resMemberDecl] = midMemberDecl; }
public virtual void InsertMemberDecl( IResMemberDecl resMemberDecl, MidMemberDecl midMemberDecl) { _members[resMemberDecl] = midMemberDecl; }
public virtual MidMemberDecl LookupMemberDecl( IResMemberDecl resMemberDecl) { throw new NotImplementedException(); }
public static bool IsImplicit( this IResMemberDecl decl) { return(decl.Line.Tags.Any( (tag) => tag is ResImplicitTag)); }
public MidMemberDecl LookupMemberDecl(IResMemberDecl resMemberDecl) { return(_decl.LookupMemberDecl(resMemberDecl)); }
public MidMemberDecl LookupMemberDecl(IResMemberDecl resMemberDecl) { throw new NotImplementedException(); }
public static bool IsConcrete( this IResMemberDecl decl) { return(decl.Line.Tags.Any( (tag) => tag is ResConcreteTag)); }