コード例 #1
0
        /// <summary>
        /// Constructs a signal reference literal.
        /// </summary>
        /// <param name="desc">referenced descriptor</param>
        /// <param name="prop">referenced signal property</param>
        public SignalRef(ISignalOrPortDescriptor desc, EReferencedProperty prop)
        {
            Contract.Requires(desc != null);

            Desc          = desc;
            Prop          = prop;
            Indices       = new List <Expression[]>();
            IndexSample   = new IndexSpec();
            IsStaticIndex = true;
        }
コード例 #2
0
        /// <summary>
        /// Constructs a signal reference literal.
        /// </summary>
        /// <param name="desc">referenced descriptor</param>
        /// <param name="prop">referenced signal property</param>
        /// <param name="indices">indices to apply</param>
        /// <param name="indexSample">sample index</param>
        /// <param name="isStaticIndex">whether the indices are static (i.e.) constant, in which case the sample index can be taken
        /// for granted</param>
        public SignalRef(ISignalOrPortDescriptor desc, EReferencedProperty prop,
                         IEnumerable <Expression[]> indices, IndexSpec indexSample, bool isStaticIndex)
        {
            Contract.Requires(desc != null);
            Contract.Requires(indices != null);
            Contract.Requires(indexSample != null);
            Contract.Requires(indices.Count() == indexSample.Indices.Length);

            Desc          = desc;
            Prop          = prop;
            Indices       = indices.ToList();
            IndexSample   = indexSample;
            IsStaticIndex = isStaticIndex;
        }
コード例 #3
0
ファイル: Literals.cs プロジェクト: venusdharan/systemsharp
 /// <summary>
 /// Creates a new signal reference literal.
 /// </summary>
 /// <param name="signal">reference signal instance</param>
 /// <param name="prop">referenced property</param>
 public static SignalRef Create(SignalBase signal, EReferencedProperty prop)
 {
     Contract.Requires(signal != null);
     return Create(signal.Descriptor, prop);
 }
コード例 #4
0
ファイル: Literals.cs プロジェクト: venusdharan/systemsharp
 /// <summary>
 /// Creates a new signal reference literal.
 /// </summary>
 /// <param name="desc">referenced descriptor</param>
 /// <param name="prop">referenced property</param>
 public static SignalRef Create(ISignalOrPortDescriptor desc, EReferencedProperty prop)
 {
     Contract.Requires(desc != null);
     return new SignalRef(desc, prop);
 }
コード例 #5
0
ファイル: Literals.cs プロジェクト: venusdharan/systemsharp
        /// <summary>
        /// Constructs a signal reference literal.
        /// </summary>
        /// <param name="desc">referenced descriptor</param>
        /// <param name="prop">referenced signal property</param>
        /// <param name="indices">indices to apply</param>
        /// <param name="indexSample">sample index</param>
        /// <param name="isStaticIndex">whether the indices are static (i.e.) constant, in which case the sample index can be taken
        /// for granted</param>
        public SignalRef(ISignalOrPortDescriptor desc, EReferencedProperty prop, 
            IEnumerable<Expression[]> indices, IndexSpec indexSample, bool isStaticIndex)
        {
            Contract.Requires(desc != null);
            Contract.Requires(indices != null);
            Contract.Requires(indexSample != null);
            Contract.Requires(indices.Count() == indexSample.Indices.Length);

            Desc = desc;
            Prop = prop;
            Indices = indices.ToList();
            IndexSample = indexSample;
            IsStaticIndex = isStaticIndex;
        }
コード例 #6
0
ファイル: Literals.cs プロジェクト: venusdharan/systemsharp
        /// <summary>
        /// Constructs a signal reference literal.
        /// </summary>
        /// <param name="desc">referenced descriptor</param>
        /// <param name="prop">referenced signal property</param>
        public SignalRef(ISignalOrPortDescriptor desc, EReferencedProperty prop)
        {
            Contract.Requires(desc != null);

            Desc = desc;
            Prop = prop;
            Indices = new List<Expression[]>();
            IndexSample = new IndexSpec();
            IsStaticIndex = true;
        }
コード例 #7
0
 /// <summary>
 /// Creates a new signal reference literal.
 /// </summary>
 /// <param name="signal">reference signal instance</param>
 /// <param name="prop">referenced property</param>
 public static SignalRef Create(SignalBase signal, EReferencedProperty prop)
 {
     Contract.Requires(signal != null);
     return(Create(signal.Descriptor, prop));
 }
コード例 #8
0
 /// <summary>
 /// Creates a new signal reference literal.
 /// </summary>
 /// <param name="desc">referenced descriptor</param>
 /// <param name="prop">referenced property</param>
 public static SignalRef Create(ISignalOrPortDescriptor desc, EReferencedProperty prop)
 {
     Contract.Requires(desc != null);
     return(new SignalRef(desc, prop));
 }