public ISymbolVariable[] GetVariables(SymbolToken parent) { int varCount; HRESULT.ThrowOnFailure(_unmanaged.GetVariables(parent.GetToken(), 0, out varCount, null)); var unmanagedVars = new ISymUnmanagedVariable[varCount]; HRESULT.ThrowOnFailure(_unmanaged.GetVariables(parent.GetToken(), unmanagedVars.Length, out varCount, unmanagedVars)); var variables = new ISymbolVariable[varCount]; for (int i = 0; i < varCount; i++) { variables[i] = new SymbolVariable(unmanagedVars[i]); } return(variables); }
public ISymbolVariable[] GetParameters() { int varCount; HRESULT.ThrowOnFailure(_unmanaged.GetParameters(0, out varCount, null)); var unmanagedVars = new ISymUnmanagedVariable[varCount]; HRESULT.ThrowOnFailure(_unmanaged.GetParameters(unmanagedVars.Length, out varCount, unmanagedVars)); var variables = new ISymbolVariable[varCount]; for (int i = 0; i < varCount; i++) { variables[i] = new SymbolVariable(unmanagedVars[i]); } return(variables); }
public ISymbolVariable[] GetLocals() { int size; HRESULT.ThrowOnFailure(_unmanaged.GetLocals(0, out size, null)); var unmanagedVars = new ISymUnmanagedVariable[size]; HRESULT.ThrowOnFailure(_unmanaged.GetLocals(unmanagedVars.Length, out size, unmanagedVars)); var variables = new ISymbolVariable[size]; for (int i = 0; i < size; i++) { variables[i] = new SymbolVariable(unmanagedVars[i]); } return(variables); }