-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or request
Description
The following sample code:
public class MyClass
{
private string foo = "Hello, world!";
public void PrintFoo()
{
Console.WriteLine($"The value of foo is: {foo}");
}
}Gives:
<unit xmlns="http://www.srcML.org/srcML/src" revision="1.0.0" language="C#" filename="untitled">
<class><specifier>public</specifier> class <name>MyClass</name>
<block>{
<decl_stmt><decl><type><specifier>private</specifier> <name>string</name></type> <name>foo</name> <init>= <expr><literal type="string">"Hello, world!"</literal></expr></init></decl>;</decl_stmt>
<function><type><specifier>public</specifier> <name>void</name></type> <name>PrintFoo</name><parameter_list>()</parameter_list>
<block>{<block_content>
<expr_stmt><expr><call><name><name>Console</name><operator>.</operator><name>WriteLine</name></name><argument_list>(<argument><expr><name>$</name><literal type="string">"The value of foo is: {foo}"</literal></expr></argument>)</argument_list></call></expr>;</expr_stmt>
</block_content>}</block></function>
}</block></class></unit>Where it uses the field foo within an interpolated string.
As of now, Stereocode does not collect the usage of such data members (e.g., fields or methods).
A potential solution would be to collect every interpolated string and then extract the expressions between the { and } for further processing.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request