Exemplo n.º 1
0
        /// <summary>
        /// Begins a new statement.
        /// </summary>
        /// <param name="command">The initial command to emit.</param>
        /// <returns>The created statement emitter.</returns>
        public StatementEmitter BeginStatement(string command)
        {
            var emitter = new StatementEmitter(this);

            emitter.AppendCommand(command);
            return(emitter);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Begins a new statement.
        /// </summary>
        /// <param name="target">The target variable to assign to.</param>
        /// <param name="fieldIndices">The field indices to use.</param>
        /// <returns>The created statement emitter.</returns>
        public StatementEmitter BeginStatement(Variable target, ImmutableArray <int> fieldIndices)
        {
            var emitter = new StatementEmitter(this);

            emitter.AppendFieldTarget(target, fieldIndices);
            return(emitter);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Begins a new statement.
        /// </summary>
        /// <param name="target">The target variable to assign to.</param>
        /// <param name="indexer">The indexer variable to use.</param>
        /// <returns>The created statement emitter.</returns>
        public StatementEmitter BeginStatement(Variable target, Variable indexer)
        {
            var emitter = new StatementEmitter(this);

            emitter.AppendIndexedTarget(target, indexer);
            return(emitter);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Begins a new statement.
        /// </summary>
        /// <param name="target">The target variable to assign to.</param>
        /// <returns>The created statement emitter.</returns>
        public StatementEmitter BeginStatement(Variable target)
        {
            var emitter = new StatementEmitter(this);

            emitter.AppendTarget(target);
            return(emitter);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Begins a new statement.
        /// </summary>
        /// <param name="target">The target variable to assign to.</param>
        /// <param name="fieldIndex">The field index to use.</param>
        /// <returns>The created statement emitter.</returns>
        public StatementEmitter BeginStatement(Variable target, int fieldIndex)
        {
            var emitter = new StatementEmitter(this);

            emitter.AppendFieldTarget(target, fieldIndex);
            return(emitter);
        }
Exemplo n.º 6
0
        /// <summary>
        /// Begins a new statement.
        /// </summary>
        /// <param name="target">The target variable to assign to.</param>
        /// <returns>The created statement emitter.</returns>
        public StatementEmitter BeginStatement(IntrinsicVariable target)
        {
            var emitter = new StatementEmitter(this, Indent);

            emitter.AppendTarget(target);
            return(emitter);
        }
Exemplo n.º 7
0
        /// <summary>
        /// Begins a new statement.
        /// </summary>
        /// <param name="target">The target variable to assign to.</param>
        /// <param name="fieldAccess">The field access to use.</param>
        /// <returns>The created statement emitter.</returns>
        public StatementEmitter BeginStatement(Variable target, FieldAccess fieldAccess)
        {
            var emitter = new StatementEmitter(this);

            emitter.AppendFieldTarget(target, fieldAccess);
            return(emitter);
        }
Exemplo n.º 8
0
        /// <summary>
        /// Begins a new statement.
        /// </summary>
        /// <param name="command">The initial command to emit.</param>
        /// <returns>The created statement emitter.</returns>
        public StatementEmitter BeginStatement(FormattableString command)
        {
            var emitter = new StatementEmitter(this);

            emitter.AppendOperation(command);
            return(emitter);
        }
Exemplo n.º 9
0
 /// <summary>
 /// Emits a move operation.
 /// </summary>
 /// <param name="target">The target variable to assign to.</param>
 /// <param name="source">The source variable to assign to.</param>
 public void Move(Variable target, Variable source)
 {
     using (var emitter = new StatementEmitter(this))
     {
         emitter.AppendTarget(target, false);
         emitter.Append(source);
     }
 }
Exemplo n.º 10
0
 /// <summary>
 /// Declares a variable
 /// </summary>
 /// <param name="target">The target variable to declare.</param>
 public void Declare(Variable target)
 {
     using (var emitter = new StatementEmitter(this))
         emitter.AppendDeclaration(target);
 }