protected override IObjectCreationExpression CreateExpression(CSharpElementFactory factory, ICSharpExpression expression) { // yes, simply reinterpret expression as IReferenceName in obect creation expression var template = string.Format("new {0}", expression.GetText()); return((IObjectCreationExpression)factory.CreateExpressionAsIs(template, applyCodeFormatter: false)); }
protected override IObjectCreationExpression CreateExpression(CSharpElementFactory factory, ICSharpExpression expression) { var settingsStore = expression.GetSettingsStore(); var parenthesesType = settingsStore.GetValue(CodeCompletionSettingsAccessor.ParenthesesInsertType); var template = string.Format("new {0}{1}", expression.GetText(), parenthesesType.GetParenthesesTemplate()); return((IObjectCreationExpression)factory.CreateExpressionAsIs(template, false)); }
private IAttribute CreateContractClassAttribute(string contractClassName) { ITypeElement type = TypeFactory.CreateTypeByCLRName( typeof(ContractClassAttribute).FullName, _provider.PsiModule, _currentFile.GetResolveContext()).GetTypeElement(); var expression = _factory.CreateExpressionAsIs( string.Format("typeof({0})", contractClassName)); var attribute = _factory.CreateAttribute(type); attribute.AddArgumentAfter( _factory.CreateArgument(ParameterKind.VALUE, expression), null); return(attribute); }
protected override Action <ITextControl> ExecutePsiTransaction(ISolution solution, IProgressIndicator progress) { CSharpElementFactory factory = CSharpElementFactory.GetInstance(this._provider.PsiModule); var stringValue = this._stringLiteral.ConstantValue.Value as string; if (stringValue == null) { return(null); } char[] chars = stringValue.ToCharArray(); Array.Reverse(chars); ICSharpExpression newExpr = factory.CreateExpressionAsIs("\"" + new string(chars) + "\""); this._stringLiteral.ReplaceBy(newExpr); return(null); }
private void Replase(ISolution solution, CSharpElementFactory c_sharp_element_factory, IList <IParameter> parameters) { String named_parameters_s = "("; foreach (IParameter parameter in parameters) { named_parameters_s += parameter.ShortName + $": TODO,"; } named_parameters_s = named_parameters_s.Remove(startIndex: named_parameters_s.Length - 1) + ")"; this.error.Reference.GetTreeNode().GetPsiServices().Transactions.Execute( commandName: GetType().Name, handler: () => { using (solution.GetComponent <IShellLocks>().UsingWriteLock()) { ModificationUtil.AddChild( root: this.error.Reference.GetTreeNode(), child: c_sharp_element_factory.CreateExpressionAsIs( format: named_parameters_s)); } }); }
protected override IObjectCreationExpression CreateExpression(CSharpElementFactory factory, ICSharpExpression expression) { var template = string.Format("new {0}", expression.GetText()); return((IObjectCreationExpression)factory.CreateExpressionAsIs(template, applyCodeFormatter: false)); }
protected override ITypeofExpression CreateExpression(CSharpElementFactory factory, ICSharpExpression expression) { var template = "typeof(" + expression.GetText() + ")"; return((ITypeofExpression)factory.CreateExpressionAsIs(template)); }