luxlabs header browser preview


@class NSMutableString, NSMutableDictionary, NSDictionary, NSArray, NSString, NSMutableArray, NSMapTable;

@interface NURuleSystem : NSObject <NSSecureCoding> {
    NSMutableDictionary *_constants;
    NSMutableArray *_rules;
    NSMutableArray *_agenda;
    NSMutableArray *_executed;
    NSMapTable *_gradeByFact;
    NSMutableString *_runLog;
}

@property (class, readonly) BOOL supportsSecureCoding;

@property (copy, nonatomic) NSDictionary *constants;
@property (readonly, copy, nonatomic) NSMutableDictionary *state;
@property (readonly, copy, nonatomic) NSArray *rules;
@property (readonly, copy, nonatomic) NSArray *agenda;
@property (readonly, copy, nonatomic) NSArray *executed;
@property (readonly, copy, nonatomic) NSDictionary *facts;
@property (nonatomic) BOOL enableLogging;
@property (readonly, copy, nonatomic) NSString *runLog;

- (id)debugQuickLookObject;
- (id)init;
- (void)reset;
- (void)encodeWithCoder:(id)a0;
- (void).cxx_destruct;
- (id)debugDescription;
- (void)addRule:(id)a0;
- (void)evaluate;
- (id)initWithCoder:(id)a0;
- (void)retractFact:(id)a0;
- (void)resetAndEvaluateWithInitialState:(id)a0;
- (void)setStateObject:(id)a0 forKey:(id)a1;
- (void)_addRuleToAgenda:(id)a0;
- (void)addRulesFromArray:(id)a0;
- (void)assertFact:(id)a0;
- (void)assertFact:(id)a0 grade:(double)a1;
- (double)gradeForFact:(id)a0;
- (double)maximumGradeForFacts:(id)a0;
- (double)minimumGradeForFacts:(id)a0;
- (void)removeAllRules;
- (void)retractFact:(id)a0 grade:(double)a1;

@end