Skip to content
This repository was archived by the owner on Jan 12, 2024. It is now read-only.

Conversation

@bettinaheim
Copy link
Contributor

@bettinaheim bettinaheim commented Sep 8, 2019

This PR contains basic resolution and handling in the symbol table.

The way it works:

  • any user defined type can be marked as attribute
  • marking it as attribute does not prevent using it just like any other user defined type
  • it is marked by attaching the "Attribute" attribute defined in the core namespace to it
  • an attribute annotation then consists of a compile time constant of such an attribute
  • such annotations for now may only be attached to declarations (types, functions, operations)
  • for now they are disabled on specializations (due to design reasons, meaning I want time to spec it)

All the intellisense etc should be enabled for attributes as well.

@bettinaheim bettinaheim marked this pull request as ready for review September 9, 2019 02:46
cgranade
cgranade previously approved these changes Sep 10, 2019
Copy link
Contributor

@cgranade cgranade left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, I think this is a great addition to the language and to the feature branch!

Co-Authored-By: Chris Granade <chgranad@microsoft.com>
@bettinaheim bettinaheim merged commit c8867c6 into features/language Sep 10, 2019
@bettinaheim bettinaheim deleted the beheim/attributes branch September 10, 2019 21:54
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants