You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is the implementation issue for the 2nd part of the design issue #1946
Logic would be as follow: (✅ means we are already doing that, ➡️ are new steps)
✅ Start checking operation
➡️ For each @param found register the decorator on the operation parameter symbol(as an augment decorator)
✅ Check if op is and resolve source operation
✅ Check parameters
✅ resolve any spread model
✅ finish each property
✅ resolve augment decorators for the property. This means it would now include the value included by @param
✅ finish creating operation
Test cases
/**
* @param one Doc comment
*/
op base(one: string): void;
// getDoc(base.one) === "Doc Comment"
/**
* @param one Doc comment
*/
op base(@doc("Explicit") one: string): void;
// getDoc(base.one) === "Explicit"
/**
* @param one Doc comment
*/
op base(one: string): void;
@@doc(base::parameters.one, "Override");
// getDoc(base.one) === "Override"
/**
* @param one Doc comment
*/
op base(one: string): void;
op child is base;
// getDoc(child.one) === "Doc Comment"
/**
* @param one Doc comment
*/
op base(one: string): void;
/**
* @param one Override for child
*/
op child is base;
// getDoc(child.one) === "Override for child"
/**
* @param one Doc comment
*/
op base(one: string): void;
/**
* @param one Override for child
*/
op child is base;
@@doc(child::parameters.one, "Override for child again")
// getDoc(child.one) === "Override for child again"
model A {
@doc("Via model") one: string
}
op base(...A): void;
// getDoc(base.one) === "Via model"
model A {
@doc("Via model") one: string
}
/**
* @param one Doc comment
*/
op base(...A): void;
// getDoc(base.one) === "Doc Comment"
The text was updated successfully, but these errors were encountered:
This is the implementation issue for the 2nd part of the design issue #1946
Logic would be as follow: (✅ means we are already doing that, ➡️ are new steps)
@param
found register the decorator on the operation parameter symbol(as an augment decorator)op is
and resolve source operation@param
Test cases
The text was updated successfully, but these errors were encountered: