1- # OpenGraph Copilot Instructions
1+ # OpenAttributeGraph Copilot Instructions
22
3- This file contains coding guidelines and conventions for AI assistants working on the OpenGraph project.
3+ This file contains coding guidelines and conventions for AI assistants working on the OpenAttributeGraph project.
44
55## Quick Reference
66
77### Key Principles
88- Use ` swift-testing ` framework with ` #expect ` macro (not XCTest)
9- - Follow OpenGraph C++ and Swift interop patterns
9+ - Follow OpenAttributeGraph C++ and Swift interop patterns
1010- Trim trailing whitespaces automatically
1111- Use 4-space indentation consistently
1212
@@ -23,7 +23,7 @@ This file contains coding guidelines and conventions for AI assistants working o
2323``` swift
2424import Testing
2525
26- struct OpenGraphTests {
26+ struct OpenAttributeGraphTests {
2727 @Test
2828 func functionality () {
2929 let value = SomeType ()
@@ -100,40 +100,40 @@ struct OpenGraphTests {
100100
101101## C++ Coding Style
102102
103- ### OpenGraphCxx Guidelines
103+ ### OpenAttributeGraphCxx Guidelines
104104
105- - Follow existing OpenGraph C++ patterns and conventions
106- - Use ` OG_INLINE ` and ` OG_CONSTEXPR ` macros for inline and constexpr functions
107- - Use ` OG_NOEXCEPT ` for exception specifications
108- - Maintain compatibility with existing OpenGraph APIs
105+ - Follow existing OpenAttributeGraph C++ patterns and conventions
106+ - Use ` OAG_INLINE ` and ` OAG_CONSTEXPR ` macros for inline and constexpr functions
107+ - Use ` OAG_NOEXCEPT ` for exception specifications
108+ - Maintain compatibility with existing OpenAttributeGraph APIs
109109- Use proper header guards with project-specific naming
110110
111111### Memory Management
112112
113113- Use RAII principles for resource management
114114- Prefer smart pointers and custom deleters for automatic cleanup
115- - Use ` ptr<T> ` template for OpenGraph -specific pointer management
115+ - Use ` ptr<T> ` template for OpenAttributeGraph -specific pointer management
116116- Implement proper validation and assertion mechanisms
117117
118118### Template Usage
119119
120120``` cpp
121121template <typename T>
122122class ptr {
123- // Implementation following OpenGraph patterns
123+ // Implementation following OpenAttributeGraph patterns
124124};
125125```
126126
127127## Architecture Patterns
128128
129- ### OpenGraph Compatibility
130- - Maintain API compatibility with existing OpenGraph functionality
129+ ### OpenAttributeGraph Compatibility
130+ - Maintain API compatibility with existing OpenAttributeGraph functionality
131131- Use similar naming conventions and parameter patterns
132- - Implement protocols and extensions that mirror OpenGraph 's design
132+ - Implement protocols and extensions that mirror OpenAttributeGraph 's design
133133
134134### Module Organization
135135- Keep related functionality in appropriate modules
136- - Use clear module boundaries between OpenGraphCxx and Swift layers
136+ - Use clear module boundaries between OpenAttributeGraphCxx and Swift layers
137137- Avoid circular dependencies between modules
138138
139139### C++/Swift Interop
@@ -163,7 +163,7 @@ func someFunction(value: String) throws -> Int {
163163
164164## Performance Considerations
165165
166- - Optimize memory allocation patterns using OpenGraph 's table/page system
166+ - Optimize memory allocation patterns using OpenAttributeGraph 's table/page system
167167- Use lazy initialization for expensive computations
168168- Consider memory management and avoid retain cycles
169169- Optimize for common use cases while maintaining flexibility
@@ -179,7 +179,7 @@ func someFunction(value: String) throws -> Int {
179179
180180### C++ Files
181181- Use proper header inclusion guards
182- - Include OpenGraph base headers first
182+ - Include OpenAttributeGraph base headers first
183183- Follow dependency order in include statements
184184- Use forward declarations when possible
185185
@@ -193,16 +193,16 @@ func someFunction(value: String) throws -> Int {
193193
194194## Memory and Data Management
195195
196- ### OpenGraph Patterns
196+ ### OpenAttributeGraph Patterns
197197- Use ` data::table ` for memory region management
198198- Implement proper page allocation and deallocation
199199- Use ` ptr<T> ` for type-safe offset-based pointers
200- - Follow OpenGraph 's zone-based memory organization
200+ - Follow OpenAttributeGraph 's zone-based memory organization
201201
202202### Validation and Assertions
203203- Use ` assert_valid ` methods for pointer validation
204204- Implement proper precondition checking
205- - Use OpenGraph 's assertion macros consistently
205+ - Use OpenAttributeGraph 's assertion macros consistently
206206- Handle edge cases gracefully
207207
208208---
0 commit comments