d4t_formulas/.pub-cache/hosted/pub.dev/analyzer-7.7.1/example/ddd14.dart
Álvaro González 1d339653d5 feat: add formula data classes with strict JSON parsing
- Add VariableSpec class with magnitude field validation
- Add Formula class supporting multiple input/output variables
- Support d4rt_code as string or object with code field
- Add comprehensive tests for parsing and serialization
- Fix broken test import in pruebas_d4rt_test.dart

Follows README.md format requirements exactly
2025-08-21 17:15:00 +02:00

154 lines
4.4 KiB
Dart

// import 'dart:io' as io;
//
// import 'package:analyzer/dart/analysis/results.dart';
// import 'package:analyzer/file_system/overlay_file_system.dart';
// import 'package:analyzer/file_system/physical_file_system.dart';
// import 'package:analyzer/src/dart/analysis/analysis_context_collection.dart';
// import 'package:analyzer/src/dart/analysis/byte_store.dart';
// import 'package:analyzer/src/dart/analysis/performance_logger.dart';
// import 'package:linter/src/rules.dart';
//
// void main() async {
// var resourceProvider = OverlayResourceProvider(
// PhysicalResourceProvider.INSTANCE,
// );
//
// registerLintRules();
//
// var byteStore = NullByteStore();
//
// var libPath = '/home/test/lib';
//
// const fileCount = 10;
// // const methodCount = 10;
// // const funRadius = 2;
//
// var unrelatedPath = '$libPath/unrelated.dart';
// resourceProvider.setOverlay(unrelatedPath, content: '', modificationStamp: 0);
//
// {
// var buffer = StringBuffer();
// for (var i = 0; i < fileCount; i++) {
// buffer.writeln("export 'file_$i.dart';");
// }
//
// resourceProvider.setOverlay(
// '$libPath/files.dart',
// content: buffer.toString(),
// modificationStamp: 0,
// );
// }
//
// for (var fileIndex = 0; fileIndex < fileCount; fileIndex++) {
// var filePath = '$libPath/file_$fileIndex.dart';
//
// var buffer = StringBuffer();
// buffer.write('''
// import 'files.dart';
// class C$fileIndex {
// void foo1() {}
// void foo2() {}
// void foo3() {}
// ''');
// // for (var fieldIndex = 0; fieldIndex < methodCount; fieldIndex++) {
// // buffer.write('''
// // void foo_$fieldIndex() {}
// // ''');
// // }
// buffer.write(r'''
// }
// ''');
//
// if (fileIndex > 0) {
// buffer.write('''
// void f_$fileIndex(C${fileIndex - 1} c) {
// c.foo1();
// }
// ''');
// }
//
// // var funIndex = 0;
// // for (var otherIndex = fileIndex - funRadius;
// // otherIndex <= fileIndex + funRadius;
// // otherIndex++) {
// // var otherIndex2 = (fileCount + otherIndex) % fileCount;
// // buffer.writeln('''
// // void f_${fileIndex}_${funIndex++}(C$otherIndex2 _) {}
// // ''');
// // }
//
// print('------------ $filePath');
// print(buffer.toString());
//
// resourceProvider.setOverlay(
// filePath,
// content: buffer.toString(),
// modificationStamp: 0,
// );
// }
//
// for (var i = 0; i < 1; i++) {
// var collection = AnalysisContextCollectionImpl(
// resourceProvider: resourceProvider,
// includedPaths: [libPath],
// byteStore: byteStore,
// performanceLog: PerformanceLog(io.stdout),
// );
//
// var analysisContext = collection.contextFor(libPath);
//
// {
// var path = '/home/test/lib/file_0.dart';
//
// var analysisSession = analysisContext.currentSession;
// await analysisSession.getResolvedLibrary(unrelatedPath);
// print('\n' * 2);
//
// print('Analyze #1\n');
// await analysisSession.getResolvedLibrary(path);
// print('\n' * 2);
// }
//
// {
// var modifiedPath = '/home/test/lib/file_0.dart';
// resourceProvider.setOverlay(
// modifiedPath,
// content: r'''
// import 'files.dart';
// class C0 {
// void bar() {}
// void foo2() {}
// void foo3() {}
// }
// ''',
// modificationStamp: 1,
// );
//
// analysisContext.changeFile(modifiedPath);
// await analysisContext.applyPendingFileChanges();
// var analysisSession = analysisContext.currentSession;
// print('\n' * 2);
//
// var path_0 = '/home/test/lib/file_0.dart';
// var path_1 = '/home/test/lib/file_1.dart';
//
// print('Analyze #2\n');
//
// var result_0 = await analysisSession.getResolvedLibrary(path_0);
// result_0 as ResolvedLibraryResult;
// print('[errors_0][${result_0.units[0].diagnostics}]');
// print('\n' * 2);
//
// // var analysisDriver = analysisContext.driver;
// // analysisDriver.resetLibraryImportScope(path_1);
//
// var result_1 = await analysisSession.getResolvedLibrary(path_1);
// result_1 as ResolvedLibraryResult;
// print('[errors_1][${result_1.units[0].diagnostics}]');
// print('\n' * 2);
// }
//
// await collection.dispose();
// print('\n' * 2);
// }
// }