public VariableDeclaration AddSelfParameter(SelfParameterSymbol symbol)
        {
            Requires.That("variableNumber", variables.Count == 0, "Self parameter must have variable number 0");
            var variable = new VariableDeclaration(true, false, symbol.DataType, Variable.Self, null, symbol);

            variables.Add(variable);
            return(variable);
        }
Beispiel #2
0
        private void BuildSelParameterSymbol(
            InvocableSymbol containingSymbol,
            ISelfParameterSyntax param,
            DataType type)
        {
            var symbol = new SelfParameterSymbol(containingSymbol, type);

            param.Symbol.Fulfill(symbol);
            symbolTree.Add(symbol);
        }
Beispiel #3
0
 public SelfExpression(
     TextSpan span,
     DataType dataType,
     ExpressionSemantics semantics,
     SelfParameterSymbol referencedSymbol,
     bool isImplicit)
     : base(span, dataType, semantics)
 {
     ReferencedSymbol = referencedSymbol;
     IsImplicit       = isImplicit;
 }
 public SelfParameter(TextSpan span, SelfParameterSymbol symbol, bool unused)
     : base(span, unused)
 {
     Symbol = symbol;
 }
Beispiel #5
0
 public SelfParameterIL(SelfParameterSymbol symbol)
     : base(symbol, symbol.IsMutableBinding, symbol.DataType)
 {
     Symbol = symbol;
 }
 public SelfParameterName(TextSpan span, SelfParameterSymbol referencedSymbol)
     : base(span)
 {
     ReferencedSymbol = referencedSymbol;
 }