Esempio n. 1
0
        public FunctionCallResult(FunctionCall functionCall)
            : base(StorageAreaKind.FunctionCallResult)
        {
            FunctionCall = functionCall;

            // This is both a storage area definition and a reference to the same storage area
            int uniqueCounter = Interlocked.Increment(ref callSiteCounter);
            DataDescriptionEntry = new FunctionCallResultDescriptionEntry(functionCall, uniqueCounter);
            SymbolReference = new SymbolReference(DataDescriptionEntry.DataName);
        }
Esempio n. 2
0
        public FunctionCallResultDescriptionEntry(FunctionCall functionCall, int callSiteId)
            : base()
        {
            // Generate a unique symbol name for the function call at this specific call site
            var generatedSymbolName = new GeneratedSymbolName(functionCall.FunctionNameToken, functionCall.FunctionName + "-" + callSiteId);
            DataName = new SymbolDefinition(generatedSymbolName, SymbolType.DataName);

            FunctionCall = functionCall;
        }
Esempio n. 3
0
 public virtual bool Visit(FunctionCall functionCall)
 {
     return(true);
 }