Пример #1
0
 public MetadataNamedArgument(ISymbol entity, Cci.ITypeReference type, Cci.IMetadataExpression value)
 {
     // entity must be one of INamedEntity or IFieldDefinition or IPropertyDefinition
     _entity = entity;
     _type   = type;
     _value  = value;
 }
Пример #2
0
            public override ScopeInfo OpenScope(
                ScopeType scopeType,
                Cci.ITypeReference exceptionType,
                ExceptionHandlerScope currentExceptionHandler)
            {
                var scope = base.OpenScope(scopeType, exceptionType, currentExceptionHandler);

                if (_nestedScopes == null)
                {
                    _nestedScopes = ImmutableArray.CreateBuilder <ScopeInfo>(1);
                }
                _nestedScopes.Add(scope);
                return(scope);
            }
Пример #3
0
            internal ScopeInfo OpenScope(ScopeType scopeType, Cci.ITypeReference exceptionType)
            {
                var scope = CurrentScope.OpenScope(scopeType, exceptionType, _enclosingExceptionHandler);

                _scopes.Push(scope);

                if (scope.IsExceptionHandler)
                {
                    _enclosingExceptionHandler = (ExceptionHandlerScope)scope;
                }

                Debug.Assert(_enclosingExceptionHandler == GetEnclosingExceptionHandler());
                return(scope);
            }
Пример #4
0
 public MetadataCreateArray(Cci.IArrayTypeReference arrayType, Cci.ITypeReference elementType, ImmutableArray <Cci.IMetadataExpression> initializers)
 {
     ArrayType   = arrayType;
     ElementType = elementType;
     Elements    = initializers;
 }